3DCoat  3D-COAT 4.9.xx
3DCoat is the one application that has all the tools you need to take your 3D idea from a block of digital clay all the way to a production ready, fully textured organic or hard surface model.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 12345]
oNcoatFor simple script registrations
oNcomms
oNdownloader
oNgltf
oNjcc
oNOpenSubdiv
oNscalc
oNsparse
oNzpp
oC_ExProcessPlatform independent class for creating processes
oC_tcallbackThe functional callback that uses std::function to handle all messages in 3D-Coat
oC_timelogUse _timelog instead of timelog to disable the timing temporary, this is empty equivalent of the timelog
oCActiveBasicToolUse this class for create a tool on top of another tool
oCArrowСтрелка в графе содержит номера начальной и конечной вершины
oCBaseClassUse this class for build a class for UI or serialization. see class_reg.h for details about the class registration
oCBaseClassElementBaseClassElement used to iterate over BaseClass items.
Typical pattern of usage:
oCBaseKnot
oCBasicRoomThis is base class for new room that consists of VoxelExtensions
oCBChPropertiesClass that serves to describe the properties of the Bezier Chunk
oCBevel3Simple bevel for mesh
oCBezierCurveFClass in which a curve consisting of several elementary Bezier curves is stored
oCBezierPointClass stores parameters of curve point
oCbi_DWORDTwo values of type DWORD
oCbiD2Structure to keep exactly intersecting edges and faces touched by edges
oCBlocksJointsTmpInfoCache information about each block, the address of the file, folder, and list of joints, it allows you to quickly select the appropriate joint
oCCallbacksTestClassCheck if very questionable callbacks comparison mechanism really works
oCCallItLater
oCCappedAverageThis class is intended to calculate capped average values. Let you have positive values a[i]. Most of them are valid and regular, bot some (small amount) of them are erratic and getting big random value. You need to calculate average value without taking into account too big and too small values. Use this class for this purpose. Multithreaded addition supported
oCClassArrayThe array of elements derived from the BaseClass. If you create ClassArray and register if with the REG_AUTO the class may be easily serialized. This is the easiest way to serialize array of elements of show it in the UI
oCClassEditorContextContext for creationg own class editor control
oCClassPtrThe pointer to the allocated class derived from the BaseClass. It allows serialization/presentation in UI the elements derived from the BaseClass
oCClassRefThe reference to the element derived from the BaseClass. This is the reference, element should be allocated elsewhere
oCcListThe array template, refer it as coat::list <...> if you are using the Core API
oCClosestPointFinder
oCcMat3The 3D-matrix, refer it as coat::mat3 in the Core API
oCcMat4The 4D-matrix, refer it as coat::mat4 in the Core API
oCcMeshContainerGeneral class for work with mesh
oCcMutexContains mutexes which "comms" uses internally
oCCoatCanvasDrawing canvas implementation for 3D-Coat
oCCommandButtonDerive from the CommandButton if you need command in toolset, not tool! class MyButton : public CommandButton { ... }; Register as usual VoxelExtension::Register(new MyButton);
oCCSurfaceNGenerTwoGuideThe class CSurfaceNGenerTwoGuide is creating by moving N Gener along the two Guide
oCCSurfacePrismThe class CSurfacePrism is creating linear surface be generator and rotating (QtyRotate) the surfaces around an axis
oCCSurfaceRotateThe class CSurfaceRotate is creating by rotating the generator around an axis
oCCSurfaceSweptThe class CSurfaceSwept is needed to construct the surface by moving the Gener along the Guide
oCCSurfaceSwept2The class CSurfaceSwept2 is creating by moving the Gener along the two Guide
oCCSurfaceSwept3The class CSurfaceSwept3 is creating by moving the two Gener along the Guide
oCCubicBezierChunkD3In this class Bezier Chunk with double exactness. I use this class to find intersection of two float Bezier Chunk
oCCubicBezierChunkF3Bezier Chunk or classical Bezier curve
oCCubicBezierChunkF4Parameters of points - normal and radius
oCcuGizmoControlThis structure is passed to CurvePrimitive::GetControl to render and handle controls
oCcurvedTriangSee the https://docs.google.com/document/d/1ufWXm06OMJqtWPK-wFjwM86P5-DYZzePRfVKel5TVC0/edit?usp=sharing about the curved barycentric coordinates
oCCurveModifierThe class CurveModifier intended to produce some procedural mesh over the curve of group of curves
oCCurvePrimitiveDerive from this class and call CurvePrimitive::Register(new SomethingDerivedFromCurvePrimitive) to add new primitive type
oCCurveReferenceThis chass if curve reference to be inserted in some class that manages curve. Register it as REG_AUTO(...) and get it in UI
oCcVec2The 2D-vector, refer it as coat::vec2 in the Core API
oCcVec3The 3D-vector, refer it as coat::vec3 in the Core API
oCcVec4The 4D-vector, refer it as coat::vec4 in the Core API
oCDelimiterClasses implementation
oCdim_TypeAgile class aka bi_DWORD, tri_DWORD etc.
oCdiscrVec2Discrete vectors with float components
oCDivisionPointThis structure uses for finding intersection of two Bezier Chunk
oCDWORDS2Sorted two values of type DWORD
oCDWORDS2ASorted three values plus attribute of type DWORD
oCDWORDS3Sorted three values of type DWORD
oCExampleOfLoadSaveDataTo3BFileExtension
oCFacturesFolderFolder of factures
oCFillContourThe class ContourToFill intended to fill contours by triangles or quads
oCgTokensClass of the tokens
oCHashSummatorThe class used to calculate hash value over the any type. Usually it is used to check if some structure state changed.
oCHexagonalGrid2DHexagonalGrid2D intended to create square hexagonal grid patch (regular with some irregularity on the edge, when |z| == 1) that covers range x:[-1..1], y=0, z:[-1..1] Use this chass for preview of different distortions over the plane, it has very fast normals calculation routine
oCHtmlMaker
oCHyperBezierHyperBezier intended to snap to complex surface
oCItemsFolderDeclares how work with UI-elements
oCItemsTreeIf you want to introduce the structure similar to tree (like VoxTree) derive your class from the ItemsTree
oCknAnythingThis is knot that may be casted to other types. Use it if your node may accept different inputs
oCknFilePathFile path knot
oCknMatrix4DKnMatrix4D knot
oCKnotReferenceThe reference to other knot
oCknSampler2DSampler2D (bitmap texture) knot
oCknScalarDerived knots
oCknVector3D-vector knot
oCLayeredClass X should contain fields: data itself IndexType next; //- this is the reference to unit, not index LayerType Layer; //- this is optional, need only if Layer-based functions used
oCModelPreviewModelModelPreview is the class to show models previews in UI with possibility to navigate in mini-viewport
oCndSummDerived nodes
oCnewArrowСтрелка с направлением
oCNewQuiverOCOQuiver of paths of BezierCurveF
oCNewVertQuiver vertex
oCnnTeachingContextNnTeachingContext passed to Teach function
oCNodesCanvasThe canvas with different drawing operations
oCNoiseMaster
oCOneCurO_BezierCurveFObject is union of several BezierCurveF
oCOneFactureFacture
oCpair_id
oCParamGlobalStorage
oCPartialDecimatorThe class PartialDecimator is intended to decimate with constraints only the subset of the mesh
oCPlaneFPlane with float type
oCPopupWindowBase class for all popup windows
oCquad_DWORDSorted four values of type DWORD
oCQuadragulationTask
oCQuadrangulationParams
oCQuadrangulationUI
oCQuadroAccumulatorAdd points to find best quadratic form that approximates points set
oCQuadStripTool
oCQuiverPlaneIntersectionOCOBCFКолчан, построенный на путях в OneCurO_BezierCurveF
oCRadialDistributionClass to collect normals distributed over the pen circle
oCReconstructMeshFromEdgesEdgeMesher allows to create the polygonal mesh from the set of edges in space
oCRegisterVoxHelperRegister a vox tools for scripting
oCRetopoBinOpPerform the binary operations of the polygonal mesh
oCRetopoToolAll tools for low poly modelling
oCRtKnifeThe class RtKnife Need for Cuting of the ClusteredMesh By PolyLine
oCSevenVectorsClass stores parameters for uniform curve division
oCSmartMatWindowSmart materials
oCSnapJointJoints on the merged object for smapping, all coordinates are in local space of the object, object itself kept in VoxelSculptTool::CurrRawMesh
oCSnapQueueFor future: multithreaded update of the mesh, not works now
oCStringsListStringsList is the main container used as array of strings
oCTagsListThis class intended to load/save the class derived from the BaseClass as XML/JSON. But it may be used just for XML/JSON load/save. Pay attention, attributes of the XML not supported
oCTexturedVertexFor facture
oCtimelogUse this class for time profiling. The pattern of usage
oCtMiniMeshThe mini mesg class used for triangulangulation
oCTopoDist
oCtri_DWORDThree values of type DWORD
oCtri_DWORDAThree values plus attribute of type DWORD
oCtri_SHORTSorted three values of type short
oCTriHashObjCollect the ids of the polygonal mesh
oCTriPatchThe class to fill triangle with good quality triangles
oCUniformCurveDivisionClass stores parameters for uniform curve division
oCUV_map_ToolAll tools for UV-mapping room
oCVolumeCellContains voxel values
oCVolumeCellAttribMain brick in voxel / surface structure
oCVolumeObjectOne layer without hierarchy in the SculptRoom
oCVOTreeLinear list of all voxel objects
oCVoxAccess to voxels tree
oCVoxelExtensionClass for tools
oCVoxTreeBranchHierarchical layers (voxel and surface) which you see in the SculptRoom
\CWidgetsSummary over UI