CAM API
  • CAM API
v20.0.1
Search Results for

    Show / Hide Table of Contents

    Interface ICamApiVisualisationFactory

    Rendering framework entry point: creates view managers, viewports hosted in caller windows, and the visual objects / mesh builders used to feed them geometry. Resolved as a singleton via 'Extension.Global.Singletons.ViewPort'.

    Namespace: CAMAPI.ViewPort
    Assembly: CAMAPI.ViewPort.dll
    Syntax
    [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
    [Guid("48D10F9F-1B03-4441-9828-E56B8E35BBD8")]
    public interface ICamApiVisualisationFactory

    Methods

    CreateGizmo(ICamApiViewManager, ICamApiVisualObject)

    Create a move/rotate manipulator (gizmo) in the given manager's scene, returned as ICamApiGizmo. It also exposes its scene node (ICamApiVisualObject) via QueryInterface, so it enumerates and removes like any visual object. Parent as in CreateVisualObject.

    Declaration
    ICamApiGizmo CreateGizmo(ICamApiViewManager ViewManager, ICamApiVisualObject Parent)
    Parameters
    Type Name Description
    ICamApiViewManager ViewManager
    ICamApiVisualObject Parent
    Returns
    Type Description
    ICamApiGizmo

    CreateMeshBuilder()

    Create an empty mesh builder for bulk geometry construction.

    Declaration
    ICamApiMeshBuilder CreateMeshBuilder()
    Returns
    Type Description
    ICamApiMeshBuilder

    CreateViewManager()

    Create a new, empty view manager (its own scene + viewports).

    Declaration
    ICamApiViewManager CreateViewManager()
    Returns
    Type Description
    ICamApiViewManager

    CreateViewPort(ICamApiViewManager, long)

    Declaration
    ICamApiViewPort CreateViewPort(ICamApiViewManager ViewManager, long ParentWnd)
    Parameters
    Type Name Description
    ICamApiViewManager ViewManager
    long ParentWnd
    Returns
    Type Description
    ICamApiViewPort

    CreateVisualObject(ICamApiViewManager, ICamApiVisualObject)

    Create a renderable visual object (meshes, polylines, hotspots) in the given manager's scene. Returns its scene node (ICamApiVisualObject); reach its drawable content and interactivity through QueryInterface (ICamApiRenderableVO / ICamApiInteractiveVO). Parent may be nil for a top-level object, or another visual object to group this one beneath it. Note: Parent is a purely logical grouping used only by the visual-object iterator (GetVisualObjects). It does NOT nest transforms, visibility or lifetime: a child keeps its own world-space Transform, is shown/hidden on its own, and must be removed independently (RemoveVisualObject does not cascade). Every object is added to the scene at top level regardless.

    Declaration
    ICamApiVisualObject CreateVisualObject(ICamApiViewManager ViewManager, ICamApiVisualObject Parent)
    Parameters
    Type Name Description
    ICamApiViewManager ViewManager
    ICamApiVisualObject Parent
    Returns
    Type Description
    ICamApiVisualObject

    GetVisualObjects(ICamApiViewManager)

    Tree iterator over the visual objects in the given manager's scene.

    Declaration
    ICamApiVisualObjectIterator GetVisualObjects(ICamApiViewManager ViewManager)
    Parameters
    Type Name Description
    ICamApiViewManager ViewManager
    Returns
    Type Description
    ICamApiVisualObjectIterator

    RemoveVisualObject(ICamApiViewManager, ICamApiVisualObject)

    Remove a single visual object from the given manager's scene and release it. Only this object is removed: objects created with it as Parent are NOT removed (Parent is a logical grouping for enumeration only, see CreateVisualObject) - remove them explicitly if needed.

    Declaration
    void RemoveVisualObject(ICamApiViewManager ViewManager, ICamApiVisualObject Obj)
    Parameters
    Type Name Description
    ICamApiViewManager ViewManager
    ICamApiVisualObject Obj
    In this article