Note: This object model is still under development. It has not been officially released to the end users, and MathSoft is not supporting it. The current plan is to officially release it sometime during the Mathcad 9 release cycle.
3-D Plot Control
The 3-D Plot control has these automation interfaces:
ReadOnly Properties:
short RenderFilled;
short RenderHiddenLine;
short RenderAlternate;
short RenderLines;
short RenderPoints;
short RenderWireFrame;
short RenderVectorField;
short RenderBar;
short RenderContour;
short PerimeterAxes;
short CornerAxes;
short NoAxes;
IDispatch* ModelBox;
Read-Write Properties:
boolean ShowBackplanes;
boolean ShowBox;
boolean ShowBorder;
BSTR Title;
float Tilt;
float Twist;
float Rotation;
short AxesStyle;
short TitlePosition;
short NumberOfModels;
boolean Lighting;
boolean Fog;
long AmbientLight;
double Radius;
boolean PerspectiveView;
short ViewingDistance;
boolean ConstrainedView;
boolean HardwareRendering;
long BorderColor;
long BoxColor;
Obsolete Properties:
short FogMode;
long FogColor;
float FogDensity;
float FogStart;
float FogEnd;
Methods:
boolean CreateLight(short num);
SCODE AddSurfaces(VARIANT surfaces);
SCODE RemoveSurfaces();
SCODE Render();
SCODE AddVolumes(VARIANT volumes);
boolean MakeCurrent();
boolean MakeNotCurrent();
void PolygonOffset(float factor, float units) ;
SCODE AddSurface(VARIANT surface);
SCODE AddParametricSurface(VARIANT surf_x, VARIANT surf_y, VARIANT surf_z);
SCODE AddScatterData(VARIANT data_x, VARIANT data_y, VARIANT data_z);
IDispatch* Light(short n);
SCODE DestroyLight(short num);
IDispatch* Model(short n);
Obsolete Methods:
long CreateFontList();
boolean DrawText(BSTR str);
VARIANT ModelViewMatrix();
VARIANT GlyphMetrics(BSTR str);
double Aspect();
boolean wglUseFontBitmaps(long hdc, long first, long count, long listbase);
boolean SwapBuffers();
long wglGetRC();
long wglGetDC();
glLight
This is the automation interface to a light in the scene:
Properties:
long Diffuse;
long Specular;
float PosX;
float PosY;
float PosZ;
short ID;
float PositionScale;
short Enabled;
glModelBox
Ths ModelBox manages the axes and backplanes.
Properties:
IDispatch* XAxis;
IDispatch* YAxis;
IDispatch* ZAxis;
IDispatch* XYPlane;
IDispatch* XZPlane;
IDispatch* YZPlane;
glModel
Properties:
short Shininess;
long SmoothShading;
short DrawLines;
short DrawPoints;
short DrawXContours;
short DrawYContours;
short DrawZContours;
short HiddenLineRemoval;
long LineColor;
long PointColor;
long PolygonColor;
short LineColorMap;
short PointColormap;
short PolygonColormap;
float LineWidth;
float PointSize;
BSTR PointSymbol; - unimplemented
short DrawFilledPolygons;
short DrawHalfFilledPolygons;
short ViewAs;
float PolygonOffsetFactor;
short BarPlotLayout;
short InterpolatedRows; - unimplemented
short InterpolatedColumns; - unimplemented
short NumberedContours;
short NumberOfContours;
boolean SpectrumX;
boolean SpectrumY;
boolean SpectrumZ;
boolean InterpolateMesh; - unimplemented
boolean AutoContour;
boolean FillXContours;
boolean FillYContours;
boolean FillZContours;
glAxis
This is the automation interface to an axis in the scene. This object may go away in the future and be replaced by properties in the glModelBox:
Properties:
boolean Numbered;
BSTR Label;
double MinVal;
double MaxVal;
short NumGrids;
boolean ShowLabel;
IDispatch *LabelFont;
double DataMin;
double DataMax;
long AxisColor;
boolean AutoGridAxis;
boolean AutoScaleAxis;
short NumSubdivisions;
short GridLineWeight;
short SubGridLineWeight;
short AxisLineWeight;
short TickMarkWeight;
glBackPlane
This is the automation interface to a backplane in the scene. This interface may be replaced by properties in the glModelBox in the future.
Properties:
boolean ShowHorizontalGridLines;
boolean ShowVerticalGridLines;
boolean Fill;
long FillColor;
long VerticalGridColor;
boolean IsXY;
boolean IsYZ;
boolean IsXZ;
boolean ShowHorizontalSubdivisions;
boolean ShowVerticalSubdivisions;
long HorizontalSubdivisionColor;
long VerticalSubdivisionColor;
long HorizontalGridColor;
boolean ShowHorizontalTickMarks;
boolean ShowVerticalTickMarks;
long HorizontalTickMarkColor;
long VerticalTickMarkColor;
short HorizontalGridLineWeight;
short VerticalGridLineWeight;
short HorizontalSubdivisionWeight;
short VerticalSubdivisionWeight;
short VerticalTickMarkWeight;
short HorizontalTickMarkWeight;
boolean Border;
Methods:
void SetXY();
void SetYZ();
void SetXZ();
|