|
|
#1
|
||||
|
||||
3D График
Всем привет!!!!
В общем я решил заняться построением графиков функций в объеме, и у меня получилось не совсем то что я хотел, а именно вот что Но это работает только если задано Sin(x) при вычислении Sin(y) вот что выходит Код Код:
var X,Y:Byte; Index:Integer; _x,_y,_z:Extended; _xmin,_xmax,_ymin,_ymax,_zmin,_zmax:Extended; begin if md then Form1.Image1.Picture:=nil; MoveToXYZ(-100,0,0); LineToXYZ(100,0,0,clRed); MoveToXYZ(0,-100,0); LineToXYZ(0,100,0,clLime); MoveToXYZ(0,0,-100); LineToXYZ(0,0,100,clBlue); TextToXYZ(10,0,0,'X'); TextToXYZ(0,10,0,'Y'); TextToXYZ(0,0,10,'Z'); TextToXYZ(0,0,0,'0'); // if form1.cbDrawGrid.Checked Then For Index:=-10 to 10 do begin MoveToXYZ(-10,Index,0); LineToXYZ(10,Index,0,clSilver); MoveToXYZ(Index,-10,0); LineToXYZ(Index,10,0,clSilver); end; For x:=1 to 10 do for y:=1 to 10 do begin MoveToXYZ(0+10*(x)/10,0+10*(y-1)/10,Vals[x-1,y-1]); LineToXYZ(0+10*x/10,0+10*y/10,Vals[x-1,y-1],clGray); // MoveToXYZ(0+10*(x+1)/10,0+10*(y)/10,Vals[x,y]); LineToXYZ(0+10*x/10,0+10*y/10,Vals[x-1,y-1],clGray); end; — Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#2
|
||||
|
||||
Поставлю вопрос по другому, имеются точки в пространстве, как правильно соеденить их между собой в сетку?
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#3
|
||||
|
||||
Ну в общем как обычно пришлось все делать самому, вот решение
Код:
For x:=1 to 20 do for y:=1 to 20 do begin MoveToXYZ(x-1,y,Vals[X-1,Y]); LineToXYZ(x,y,vals[x,y],clGray); MoveToXYZ(x,y-1,Vals[x,y-1]); LineToXYZ(x,y,vals[x,y],clGray); end; — Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |