DG Kernel (ActiveX) Documentation


Skip Navigation Links.
Start page
Quick Start
Search Page
Installation
What is new
Upgrading Native Apps
Licensing
Collapse ModelsModels
Collapse DG Kernel ControlsDG Kernel Controls
Collapse API ReferenceAPI Reference
Interface List
Vector Space
Collapse General GeometryGeneral Geometry
Collapse ModelModel
Collapse ViewView
Collapse General ComputingGeneral Computing
Collapse ViewsViews
Collapse Samples and TutorialsSamples and Tutorials
Collapse GraphicsGraphics
Collapse Math ObjectsMath Objects
Collapse DeprecatedDeprecated
Redistribution
Model Viewer
Open Source
Support
Skip Navigation Links Go to DGKC docs Search Documentation


Surface of Revolution

Surface Of Revolution geometry (SOR) is constructed by rotating a 2D arc/line curve in the plane of x and z coordinates (Generatrix or Profile Curve) around z axis.

To modify an SOR object programmatically query IStrip_DG from IEntity_DG of the object. Elements of the strip can be either straight or curved segments. Straight segments have no parameters. They are modified by changing its end joints, obtained  form the IStrip_DG. Curved segments have single parameter - curvature, which is either 0 or 1.0/Radius. Joints of an SOR strip are 2D points and hence have two parameters. To see a sample of the above manipulations open Pipes.mdg or Sphere.mdg in MiniCAD sample and step though the source code in a debugger.

In case of a cylinder, cone or any other SOR with an open generatrix strip the discs at the top or bottom of the object can be removed or added with the help of IBoundary queried form IEntity_DG of the object, thus rendering the object either as surface or solid.

When the generating strip consists of a single point the object will be an isolated circumference in x and y plane of the local axes.  When the strip has no elements, graphically the object will be represented only by the local frame of axes, if the relevant option is selected.

Entities with SOR geometry can be created using IObjectGenerator_DG.Create("IEntity_DG") > IEntity_DG > IEntity_DG.SetGeometryType("SOR")