, , , , , . .

 

 

!

 

:

:

 

 

 

?

StudentHelp, , MS Word. , , antiplagiat.ru, etxt.ru advego.ru. StudentHelp , Word .


:


:

: . : 31.10.2012. : 2012. : 28. antiplagiat.ru: < 30%

():


?










____________________________________________________
( )
__________________ _____________________
( )
___________________05 2004 . 31 2004 .___________________
( )

__________02211______________________ .._______
( ) () ( )

______________________________________________________
() () ( )

______________________ ____________ ..__________
() () ( )

____________ _________________________________
()




____________________________________________________________________
() () ( )
:
_________________________ ___________________________________________
() () ( )
________________________ ____________________________________________
() () ( )
________________________ ____________________________________________
() () ( )









.

______________ ..
() ( )




_________________________________________________
( )
___02--211____________________ .._____
( ) (...)
___________________ ____________________
( )
_05 2004 . ____________ _____31 2004 .____________
1. 220400.
2.
1: AutoCAD 2000. 21. : .
2: ,
3: ++ Builder, , , Open JL, API . . 18.

_05 2004 . ___31 2004._______
() ()
_________________________ ..________
() ( )

__________________ _________________________ ..______
() () ( )




, . , . : AutoCAD 2000; ++ Builder, , , Open GL, API . .



























5
1
AutoCAD 2000 .
6
2
Ȼ
8
3
C++ Builder
10
4

12
5

13
6

14

33

34























, , .
AutoCAD 2000 ; ++ Builder, , , Open GL, API . . , . .






















1 AutoCAD 2000 .
AutoCad 2000 . , .
, . , .

( ):

a,
c,
d,
e,
N,
f,
b,
g,
h,
r,
m,
1.
116
86
66
46
40
8
106
56
40
26
22

, AutoCad 2000 :


:
1. .
2. .
3. .
4. .
5. .
6. .
7. .

:
1. .
2. XY .
3. .
4. .


:
1. .
2. , , .
3. , .
4. ,

AutoCad. .























2 Ȼ
Ȼ.
Ȼ:
-
-
Ȼ :
-
-
-
-
-
:
-
-
-
, , Ȼ :
, MarcSQL.

-
-
-
-
-
- .

-
-
-
-


Ȼ :
1 3:
-
-
-
- MarcSQL
- ,
5:
- , , , , .
- , , , , .















3 C++ Builder
C++ Builder : C++ Builder, api OpenGL.
C++ Builder, :
:
Form1->Image1->Canvas->Pen->Color=clRed;
:
Form1->Image1->Canvas->Pen->Width=1;
:
Form1->Image1->Canvas->Pen->Style=psDot;
:
Form1->Image1->Canvas->MoveTo(x0+x1,y0-y1);
:
Form1->Image1->Canvas->LineTo(x0+x2,y0-y2);

API :
MoveToEx
LineTo .

OpenGL :
- ,-, ( ). glVertex:
void glVertex[2 3 4][s i f d] (type coords)
void glVertex[2 3 4][s i f d]v (type *coords)


void glColor[3 4][b s i f] (GLtype components)
void glColor[3 4][b s i f]v (GLtype components)

, - , , , . OpenGL , , , , . :
void glBegin (GLenum mode);
void glEnd (void);

mode , : GL_POLYGON .
, , OpenGL :
glTranlsate..() , .
glRotate..() angle ( ) (x,y,z).
glScale..() ( ), .
.
void gluLookAt (GLdouble eyex, GLdouble eyey, GLdouble eyez, GLdouble centerx, GLdouble centery, GLdouble centerz, GLdouble upx, GLdouble upy, GLdouble upz)



4
void Pereshot(int ff2)
.
OXZ:
float m1[4][4]={{1,0,0,0},
{0,-1,0,0},
{0,0,1,0},
{0,0,0,1}};
:
float m2[4][4]={
{k1,0,0,0},
{0,k1,0,0},
{0,0,k1,0},
{0,0,0,1}};
:
float m3[4][4]={
{1,0,0,dx1},
{0,1,0,dy1},
{0,0,1,dz1},
{0,0,0,1}};
, .
3 :
, x .
OpenGL :
glTranlsate..() , .
glRotate..() angle ( ) (x,y,z).
glScale..() ( ), .




























5
:
-

(x1,y1,z1)(x2,y2,z2) (x1,y1,z1)(x3,y3,z3),
z :
Zn=-(x3-x1)*(y2-y1)+(x2-x1)*(y3-y1)
- z , , .

OpenGL :
glEnable(GL_DEPTH_TEST);
z- , OpenGL .
OpenGL , .
















6
//---------------------------------------------------------------------------
#include <vcl\vcl.h>
#pragma hdrstop

#include "all.h"
//---------------------------------------------------------------------------
#pragma resource "*.dfm"
#include <math.h>
#include <gl\gl.h>
#include <gl\glu.h>
TForm1 *Form1;
HWND H;
HDC hdc;
HGLRC hglrc;
//
int XYZ[3][11];
int dx,dy,dz;
float k;
int XYZ2[3][11];
//--------------------------------------------------------------------------

//
// : ,
void Pereshot(int dx1, int dy1, int dz1, float k1){
// OXZ
float m1[4][4]={{1,0,0,0},
{0,-1,0,0},
{0,0,1,0},
{0,0,0,1}};
//
float m2[4][4]={
{k1,0,0,0},
{0,k1,0,0},
{0,0,k1,0},
{0,0,0,1}};
//
float m3[4][4]={
{1,0,0,dx1},
{0,1,0,dy1},
{0,0,1,dz1},
{0,0,0,1}};
//
float m5[4][4];
float m4[4][4];
for (int i=0; i<4; i++)
for (int j=0; j<4; j++)
m4[i][j]=m1[i][0]*m2[0][j]+m1[i][1]*m2[1][j]+m1[i][2]*m2[2][j]+m1[i][3]*m2[3][j];
for (int i=0; i<4; i++)
for (int j=0; j<4; j++)
m5[i][j]=m3[i][0]*m4[0][j]+m3[i][1]*m4[1][j]+m3[i][2]*m4[2][j]+m3[i][3]*m4[3][j];
//
for (int i=0; i<11; i++)
XYZ2[0][i]=m5[0][0]*XYZ[0][i]+m5[0][1]*XYZ[1][i]+m5[0][2]*XYZ[2][i]+m5[0][3];
for (int i=0; i<11; i++)
XYZ2[1][i]=m5[1][0]*XYZ[0][i]+m5[1][1]*XYZ[1][i]+m5[1][2]*XYZ[2][i]+m5[1][3];
} //
//--------------------------------------------------------------------------


// ++
void MyF(int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4, int x5, int y5, int x6, int y6, int x7, int y7, int x8, int y8, int x9, int y9, int x10, int y10){
//
int x0=(Form1->Image1->Width)/2;
int y0=(Form1->Image1->Height)/2;
//
Form1->Image1->Canvas->Pen->Color=clRed;

//
float Zn1=-(x5-x1)*(y2-y1)+(x2-x1)*(y5-y1);
// z -
if (Zn1>0){
//
Form1->Image1->Canvas->Pen->Style=psSolid;
Form1->Image1->Canvas->Pen->Width=3;
}
else {
//
Form1->Image1->Canvas->Pen->Width=1;
Form1->Image1->Canvas->Pen->Style=psDot;
}
//
Form1->Image1->Canvas->MoveTo(x0+x1,y0-y1);
Form1->Image1->Canvas->LineTo(x0+x2,y0-y2);
Form1->Image1->Canvas->LineTo(x0+x3,y0-y3);
Form1->Image1->Canvas->LineTo(x0+x4,y0-y4);
Form1->Image1->Canvas->LineTo(x0+x5,y0-y5);
Form1->Image1->Canvas->LineTo(x0+x1,y0-y1);

//
Zn1=-(x9-x8)*(y7-y8)+(x7-x8)*(y9-y8);
// z -
if (Zn1>0){
//
Form1->Image1->Canvas->Pen->Style=psSolid;
Form1->Image1->Canvas->Pen->Width=3;
}
else {
//
Form1->Image1->Canvas->Pen->Width=1;
Form1->Image1->Canvas->Pen->Style=psDot;
}
//
Form1->Image1->Canvas->MoveTo(x0+x6,y0-y6);
Form1->Image1->Canvas->LineTo(x0+x7,y0-y7);
Form1->Image1->Canvas->LineTo(x0+x8,y0-y8);
Form1->Image1->Canvas->LineTo(x0+x9,y0-y9);
Form1->Image1->Canvas->LineTo(x0+x10,y0-y10);
Form1->Image1->Canvas->LineTo(x0+x6,y0-y6);

//
Zn1=-(x10-x6)*(y1-y6)+(x1-x6)*(y10-y6);
// z -
if (Zn1>0){
//
Form1->Image1->Canvas->Pen->Style=psSolid;
Form1->Image1->Canvas->Pen->Width=3;
}
else {
//
Form1->Image1->Canvas->Pen->Width=1;
Form1->Image1->Canvas->Pen->Style=psDot;
}
//
Form1->Image1->Canvas->MoveTo(x0+x1,y0-y1);
Form1->Image1->Canvas->LineTo(x0+x6,y0-y6);
Form1->Image1->Canvas->LineTo(x0+x10,y0-y10);
Form1->Image1->Canvas->LineTo(x0+x5,y0-y5);
Form1->Image1->Canvas->LineTo(x0+x1,y0-y1);

//
Zn1=-(x4-x3)*(y8-y3)+(x8-x3)*(y4-y3);
// z -
if (Zn1>0){
//
Form1->Image1->Canvas->Pen->Style=psSolid;
Form1->Image1->Canvas->Pen->Width=3;
}
else {
//
Form1->Image1->Canvas->Pen->Width=1;
Form1->Image1->Canvas->Pen->Style=psDot;
}
//
Form1->Image1->Canvas->MoveTo(x0+x3,y0-y3);
Form1->Image1->Canvas->LineTo(x0+x4,y0-y4);
Form1->Image1->Canvas->LineTo(x0+x9,y0-y9);
Form1->Image1->Canvas->LineTo(x0+x8,y0-y8);
Form1->Image1->Canvas->LineTo(x0+x3,y0-y3);

//
Zn1=-(x2-x7)*(y8-y7)+(x8-x7)*(y2-y7);
// z -
if (Zn1>0){
//
Form1->Image1->Canvas->Pen->Style=psSolid;
Form1->Image1->Canvas->Pen->Width=3;
}
else {
//
Form1->Image1->Canvas->Pen->Width=1;
Form1->Image1->Canvas->Pen->Style=psDot;
}
//
Form1->Image1->Canvas->MoveTo(x0+x2,y0-y2);
Form1->Image1->Canvas->LineTo(x0+x7,y0-y7);
Form1->Image1->Canvas->LineTo(x0+x8,y0-y8);
Form1->Image1->Canvas->LineTo(x0+x3,y0-y3);
Form1->Image1->Canvas->LineTo(x0+x2,y0-y2);

//
Zn1=-(x1-x6)*(y7-y6)+(x7-x6)*(y1-y6);
// z -
if (Zn1>0){
//
Form1->Image1->Canvas->Pen->Style=psSolid;
Form1->Image1->Canvas->Pen->Width=3;
}
else {
//
Form1->Image1->Canvas->Pen->Width=1;
Form1->Image1->Canvas->Pen->Style=psDot;
}
//
Form1->Image1->Canvas->MoveTo(x0+x1,y0-y1);
Form1->Image1->Canvas->LineTo(x0+x2,y0-y2);
Form1->Image1->Canvas->LineTo(x0+x7,y0-y7);
Form1->Image1->Canvas->LineTo(x0+x6,y0-y6);
Form1->Image1->Canvas->LineTo(x0+x1,y0-y1);

//
Zn1=-(x10-x5)*(y4-y5)+(x4-x5)*(y10-y5);
// z -
if (Zn1>0){
//
Form1->Image1->Canvas->Pen->Style=psSolid;
Form1->Image1->Canvas->Pen->Width=3;
}
else {
//
Form1->Image1->Canvas->Pen->Width=1;
Form1->Image1->Canvas->Pen->Style=psDot;
}
//
Form1->Image1->Canvas->MoveTo(x0+x5,y0-y5);
Form1->Image1->Canvas->LineTo(x0+x4,y0-y4);
Form1->Image1->Canvas->LineTo(x0+x9,y0-y9);
Form1->Image1->Canvas->LineTo(x0+x10,y0-y10);
Form1->Image1->Canvas->LineTo(x0+x5,y0-y5);
}
// api
void MyFapi(int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4, int x5, int y5, int x6, int y6, int x7, int y7, int x8, int y8, int x9, int y9, int x10, int y10){
//
int x0=(Form1->Image1->Width)/2;
int y0=(Form1->Image1->Height)/2;
// z
float Zn1=-(x5-x1)*(y2-y1)+(x2-x1)*(y5-y1);
if (Zn1>0){
// ,
MoveToEx(Form1->Image2->Canvas->Handle,x0+x1,y0-y1,0);
LineTo(Form1->Image2->Canvas->Handle,x0+x2,y0-y2);
LineTo(Form1->Image2->Canvas->Handle,x0+x3,y0-y3);
LineTo(Form1->Image2->Canvas->Handle,x0+x4,y0-y4);
LineTo(Form1->Image2->Canvas->Handle,x0+x5,y0-y5);
LineTo(Form1->Image2->Canvas->Handle,x0+x1,y0-y1); }

// z
Zn1=-(x9-x8)*(y7-y8)+(x7-x8)*(y9-y8);
if (Zn1>0){
// ,
MoveToEx(Form1->Image2->Canvas->Handle,x0+x6,y0-y6,0);
LineTo(Form1->Image2->Canvas->Handle,x0+x7,y0-y7);
LineTo(Form1->Image2->Canvas->Handle,x0+x8,y0-y8);
LineTo(Form1->Image2->Canvas->Handle,x0+x9,y0-y9);
LineTo(Form1->Image2->Canvas->Handle,x0+x10,y0-y10);
LineTo(Form1->Image2->Canvas->Handle,x0+x6,y0-y6); }

// z
Zn1=-(x10-x6)*(y1-y6)+(x1-x6)*(y10-y6);
if (Zn1>0){
// ,
MoveToEx(Form1->Image2->Canvas->Handle,x0+x1,y0-y1,0);
LineTo(Form1->Image2->Canvas->Handle,x0+x6,y0-y6);
LineTo(Form1->Image2->Canvas->Handle,x0+x10,y0-y10);
LineTo(Form1->Image2->Canvas->Handle,x0+x5,y0-y5);
L
..................



90% antiplagiat.ru, etxt.ru advego.ru




* . , .