
The unit PLOT3D displays data as three-dimensional colored surfaces which can be rotated on-screen. The rotation of the data can be achieved either by mouse interaction or by using built-in methods of the class. The data can be viewed from any direction, and can be zoomed and panned. Looking at the surface from above creates a color contour plot. More details can be found in the online help pages.
The unit PLOT3D is part of the SDL Component Suite.
Delphi Bits | Rotatable 3D surface plot | How to create a rotatable 3D surface plot with a minimum of efforts. |
SDL TechNotes | Plot3D Rotates upon Selection from Dialog | How to cope with misguided mouse clicks. |
DataLab | Plot3D is used by DataLab | If you want to experiment with a full-featured real-world application of Plot3D you may want to download the evaluation copy of DataLab. After installing it, load the data file "plot3d_dlab.asc" (command "File/Load/ASC Format...") and click the command "Visualization/3D Surface Plot". Although the evaluation copy is restricted to a maximum of 500 data points, you'll get a first impression (hint: try to change a few data points in the data editor). |
Plot3DHole | ![]() |
plot3dhole.zip
(231 kB) |
Plotit3D | ![]() |
plotit3d.zip
(299 kB) |
What's new:
- Release 10.7 [Aug-24, 2020]
- no changes
- Release 10.6 [Mar-09, 2018]
- no changes
- Release 10.5 [Oct-10, 2016]
- no changes
- Release 10.4 [Jun-02, 2015]
- the number of digits in the exponent of the scales has been reduced from 4 to 2
- Release 10.3 [Oct-06, 2014]
- VCL styles are now supported and coupled to the property StyleElements
- Release 10.2 [May-30, 2013]
- the ColorCodingMode has been extended to allow for arbitrary user defined color maps
- the new public variable IsoColors allows to assign arbitrary color maps
- Release 10.1 [Oct-29, 2012]
- The maximum and minimum magnification factor has been adjusted to 5.0 and 0.1 to improve the response to zooming by mouse movement
- new event OnZoomPan implemented
- the declarations of TRenderEvent, Tp3BeforeDrawScaleLabelEvent, and TBeforeRenderPolygonEvent had to be changed slightly (Canvas is now declared as const parameter)
- Release 10.0 [Oct-4, 2011]
- bug fix: The component does no longer raise an exception if one of the axes is perpenticular to the viewing plane
- bug fix: the method AutoScale now sets the Z scaling factor correctly
- Release 9.7 [May-31, 2010]
- speed of the assignment of values to the data grid improved
- property AutoCenter implemented
- caption of axes implemented (properties CaptionX, CaptionY, and CaptionZ)
- properties LabDistX, LabDistY, and LabDistZ control the distance of the caption from the axis
- Release 9.51 [Dec-01, 2008]
- no changes
- Release 9.5 [Oct-31, 2008]
- no changes
- Release 9.0 [May-28, 2007]
- TPlot3D now supports the OnKeyPress, OnKeyDown, OnKeyUp, OnMouseWheel, OnMouseWheelUp, and OnMouseWheelDown events
- various mesh kinds implemented (new property MeshKind)
- Release 8.5 [Feb-18, 2006]
- size of bounding box is now declared as a public constant P3BoxSize
- DrawOnForeignCanvas implemented
- range of magnification extended to 100 (was limited to 3 in previous releases)
- Release 8.2 [Nov-03, 2004]
- bug fix: OnMouseMoveOverPlot delivered wrong cell coordinates if the data matrix was resized with a TRUE SuppressPaint property.
- bug fix: ViewAngleX, ViewAngleZ, MinTickX, MinTickY, and MinTickZ can now be correctly accessed by C++Builder (problem was due to a bug in cross compiler)
- Release 8.1 [Aug-29, 2004]
- available for Delphi™ 8 for .NET
- Release 8.0 [Apr-15, 2004]
- PrintIt and CopyToOpenPrinter implemented
- CopyToWMF, CopyToBMP, CopyToClipBoard, and CopyToClipBoardWMF now allow to include or omit frame of component
- bug fix: CopyToWMF and CopyToClipBoardWMF now create correct WMF output (no longer any clipping of graphics)
- Release 7.2 [Mar-23, 2003]
- PLOT3D is now part of ChartPack
- rotation matrix is now available via array property RotMat
- Release 7.0 [Sep-15, 2002]
- available for Delphi™ 7.0
- the unit is now CLX compatible
- bounding box implemented (properties BoundBoxStyle, ColorCubeFrame, ColorCubeHidLin, ColorCubeFaceLow, ColorCubeFaceHigh)
- scales implemented (properties DecPlaceX/Y/Z, MinTickX/Y/Z, RangeX/Y/ZLow, RangeX/Y/ZHigh, SetRange, VisibleX/Y/ZCoords)
- method SetRange implemented
- bug fix: SuppressPaint now works as expected
- Release 6.5 [May-28, 2002]
- available for C++Builder™ 6.0
- SuppressPaint implemented
- OnDataRendered implemented
- ColorCodeAvg implemented
- OnMouseMoveOverPlot implemented
- OnBeforeRenderPolygon implemented
- Repaint method now triggers Paint directly (without invalidation), allowing flickerless repaint operation
- Release 6.0 [Aug-06, 2001]
- Plot3D is now available to the public and included in the SDL Component Suite 6.0