Отчет о летней практике по теме «Разработка ПО в среде MS Visual C++»

Автор: Пользователь скрыл имя, 28 Октября 2013 в 21:56, отчет по практике

Краткое описание

В последние годы основные усилия Корпорации были сосредоточены на двух направлениях: модернизация самолетов четвертого поколения и разработка истребителей поколения «4+» и «4++».
В начале 2000 г. разработаны новые варианты модернизации истребителя МиГ-29: МиГ-29СД, МиГ-29СМ и МиГ-29СМТ. Наиболее совершенный из них – МиГ-29 СМТ – это многофункциональный истребитель с открытой архитектурой авионики и современной бортовой РЛС.

Оглавление

Оглавление
РСК «МиГ» сегодня 3
Специальная часть. 4
Постановка задачи. 4
Введение 4
Microsoft Visual C++ и MFC 5
Классы графического интерфейса 6
Графические объекты 6
Текст программы 7
Результат 10
Список литературы. 11

Файлы: 1 файл

Otchet_po_praktike.docx

— 227.53 Кб (Скачать)

 

CMy222Doc* pDoc = GetDocument();

ASSERT_VALID(pDoc);

RECT size;

this->GetWindowRect(&size);

float width  = size.right - size.left;

float height = size.bottom - size.top;

CPen GreenPen(PS_DASHDOT,2,(RGB(0,255,0)));

CPen*pOldPen=pDC->SelectObject(&GreenPen);

pDC->SelectObject(GreenPen);

pDC->MoveTo(0, height/2.0f);

pDC->LineTo(width, height/2.0f);

pDC->MoveTo(width/2.0f, 0);

pDC->LineTo(width/2.0f, height);

pDC->MoveTo(width/2.0f,0);

pDC->LineTo(width/2.0f-10,15);

pDC->MoveTo(width/2.0f,0);

pDC->LineTo(width/2.0f+10,15);

pDC->MoveTo(width-5,height/2.0f);

pDC->LineTo(width-20,height/2.0f+10);

pDC->MoveTo(width-5,height/2.0f);

pDC->LineTo(width-20,height/2.0f-10);

pDC->SelectObject(pOldPen);

float scale = 50.f;

int screen_x = 0;

int i,j;

CPen GrayPen(PS_DASHDOT,0.5,(RGB(160,160,164)));

CPen*pGreenPen=pDC->SelectObject(&GrayPen);

pDC->SelectObject(GrayPen);

for (i=width/2.0f-scale; i>0; i-=scale)

{

pDC->MoveTo(i,0);

pDC->LineTo(i,height);

}

for (i=width/2.0f+scale; i<width; i+=scale)

{

pDC->MoveTo(i,0);

pDC->LineTo(i,height);

}

for (j=height/2.0f-scale; j>0; j-=scale)

{

pDC->MoveTo(0,j);

pDC->LineTo(width,j);

}

for (j=height/2.0f+scale; j<width; j+=scale)

{

pDC->MoveTo(0,j);

pDC->LineTo(width,j);

}

pDC->SelectObject(pOldPen);

CPen RedPen(PS_DASHDOT,2,(RGB(255,0,0)));

CPen*pGrayPen=pDC->SelectObject(&RedPen);

pDC->SelectObject(RedPen);

float value_x = (-width/2.0f + screen_x)/scale;

pDC->MoveTo(0, height/2.0f - func(value_x)*scale);

for (screen_x = 1; screen_x <= width; screen_x++)

{

value_x = (-width/2.0f + screen_x)/scale;

pDC->LineTo(screen_x, height/2.0f - func(value_x)*scale);

}

pDC->SelectObject(pOldPen);

pDC->TextOut(width/2.0f-20,15, CString("Y"));

pDC->TextOut(width-35,height/2.0f+5, CString("X"));

pDC->TextOut(width/2.0f-35,height/2.0f+35, CString("(0;0)"));

pDC->TextOut(width/2.0f-10,height/2.0f-scale, CString("1"));

pDC->TextOut(width/2.0f+scale-10,height/2.0f, CString("1"));

if (!pDoc)

return;

 

// TODO: add draw code for native data here

}

 

float CMy222View::func(float x)

{

return sin(x);

}

 

// CMy222View printing

 

 

void CMy222View::OnFilePrintPreview()

{

#ifndef SHARED_HANDLERS

AFXPrintPreview(this);

#endif

}

 

BOOL CMy222View::OnPreparePrinting(CPrintInfo* pInfo)

{

// default preparation

return DoPreparePrinting(pInfo);

}

 

void CMy222View::OnBeginPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)

{

// TODO: add extra initialization before printing

}

 

void CMy222View::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)

{

// TODO: add cleanup after printing

}

 

void CMy222View::OnRButtonUp(UINT /* nFlags */, CPoint point)

{

ClientToScreen(&point);

OnContextMenu(this, point);

}

 

void CMy222View::OnContextMenu(CWnd* /* pWnd */, CPoint point)

{

#ifndef SHARED_HANDLERS

theApp.GetContextMenuManager()->ShowPopupMenu(IDR_POPUP_EDIT, point.x, point.y, this, TRUE);

#endif

}

 

 

// CMy222View diagnostics

 

#ifdef _DEBUG

void CMy222View::AssertValid() const

{

CView::AssertValid();

}

 

void CMy222View::Dump(CDumpContext& dc) const

{

CView::Dump(dc);

}

 

CMy222Doc* CMy222View::GetDocument() const // non-debug version is inline

{

ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CMy222Doc)));

return (CMy222Doc*)m_pDocument;

}

#endif //_DEBUG

 

 

// CMy222View message handlers

Результат


 

 

 

 

 

 

 

 

 

 

 

 

Список литературы.

migavia.ru – российская самолётостроительная корпорация.

ru.wikipedia.org – открытая энциклопедия.

Программирование на Microsoft Visual C++ 6.0 для профессионалов_2004 


Информация о работе Отчет о летней практике по теме «Разработка ПО в среде MS Visual C++»