KernelCAD Documentation

DInsight Home
Skip Navigation Links.
Start page
Quick Start
Installation
Overview of the software
What is new
Collapse KernelCAD ModelsKernelCAD Models
Collapse KernelCAD ComponentsKernelCAD Components
KernelCAD Control
KernelCAD .NET Control
Methods and Properties
Menu
Model Explorer
Birds Eye View
Programming
Direct User Access
Direct Operations
Interface Queries
Printing Support
Data Types
Modes of KernelCAD Control
DIObjectGenerator class
Properties
FlatObjectArray Poperty
Context
64 bit development
Dual Mode
Initialisation Context
Overlay Editor
Memory Management
Input validation
Collapse Advanced functionalityAdvanced functionality
Collapse InterfacesInterfaces
Alphabetical list
I3DGrid
I3DBugger
I3Dpt
IAxiBase
IAxis
IBoolSection
IBoolSectionEx
IBoundary
IColor
IConstraint
IData
IDiffSurface_KC
IDIFont
IDraw
IDrawUtil
IDraw2
IElem
IElement
IKCLine
ILightSource
ILocation
ILocationEx
IMaterial
IMetrics
IMetrics2
IModel
IModel2
IModelEx
IPatch
IKCPathCollisionDetector
IProfiles
IPropertyArray
IPropertyArray2
IStdShape
IStrip
ISurface
IText
ITexture
ITransform
IUnknown
Collapse Open Cascade TechnologyOpen Cascade Technology
Collapse DataData
Collapse MovementMovement
Collapse FramesFrames
Collapse Oriented ObjectsOriented Objects
Collapse SectionsSections
Collapse GeneralGeneral
Collapse Topological InterfacesTopological Interfaces
Collapse Viewing InterfacesViewing Interfaces
Collapse Lines And CurvesLines And Curves
Collapse Symmetry InterfacesSymmetry Interfaces
Collapse Clipping plane interfacesClipping plane interfaces
Collapse AlgorithmsAlgorithms
Collapse 2D Geometry2D Geometry
Collapse Programming Samples and TutorialsProgramming Samples and Tutorials
Collapse OverviewOverview
Collapse DeploymentDeployment
Collapse .NET Samples.NET Samples
Collapse C++ SamplesC++ Samples
Collapse Visual Basic SamplesVisual Basic Samples
Collapse Delphi SamplesDelphi Samples
Collapse 3D Debugger3D Debugger
Collapse DeploymentDeployment
Licensing
Model Viewer
Open C++ Source
Technical Support
Skip Navigation LinksHome Page > Programming Samples and Tutorials > Overview > Pipes
Pipes Sample

Pipes Sample

Pipes sample demonstrates programming and manipulation of various properties of Pipe Section objects, including pipes and curved bars and programming of free form and splined 3D curves.

See also IPipeSection, PipesC# .NET Samples, All samples

The application

On start the application displays a pipe, central curve of which is constructed from three pieces: two arcs and a straight line. The most important geometrical property of the pipe section - central curve can be modified with the Central Line group on the right. Type of the line can be changed dynamically between interpolated free-form curve defined by raw points data and parametric Arc Spline Curves.

Both types of lines have an array of data points, which can be edited with Data group. Parametric Arc Spline Curves are supposed to have much fewer data points, they act as the connection points between consecutive splines. 

In addition to data points geometry of the central curve is defined also by:

Free-form central curve

Interpolation Degree, which affects how smooth the curve (and the pipe) will appear.

Arc Spline Curve

Array of spline normals which define plane for each spline (passes through both ends of the spline) and curvatures which defines an arc in the plane. The relevant set of controls is enabled when type of the curve is chosen.

In the default pipe there are four data points connected with three splines. Use Spline Frame and Spline Plane check boxes in the Render group to view plane and normal of the spline. Use Current Point control to change the currently displayed spline. Normal of the spline plane coincides with z axis of the spline frame. 

When the line is Arc Spline Curve "More" button is enabled, which displays additional properties of the current spline. Calculate button allows calculation of a point at any point on the current spline. Parameter of the point in range [0, 1] can be entered in the "Calculate point at" box.

Other Pipe properties

Properties of the pipe other than related to the central curve can be modified using the control group at the bottom. The sample can help to tune in the Geometric Resolution property, which affects quality of surface vs. performance trade offs. 

Filleted Pipe

Tools menu offers another way for creation of  Arc Spline Curves for central line as a line obtained by replacing sharp corners of a sequence of straight segments with arcs of any radius.

Implementation

Go to C++ Pipes Sample