Cumulia Illustrator Rendering Engine v2.1.0
A Rendering engine for industrial CAD/CAE model and optimized for greatest performance
 
Loading...
Searching...
No Matches
node.h
1//##################################################################################################
2//
3// Copyright (c) 2024 Beijing Qiongqi Tech Co.,Ltd. All rights reserved.
4
5// This source code is confidential and proprietary to Beijing Qiongqi Tech Co.,Ltd(The Holder).
6// Any unauthorized use, copying, modification, or distribution of the code is strictly prohibited.
7// Any user shall obtain authorizaition from the Holder before modifying the source code. And the user shall not
8// sublicense, sell, distribute, or transfer the source code, whether in original or modified form, to any third party
9// without the prior written consent of the Holder.
10
11// This copyright notice and permission grant shall be included in all copies or substantial portions of the source code.
12
13// Author Cumulia Illustrator
14// Date 2025-08-05
15// Version V2.1.0
16//##################################################################################################
17
18#pragma once
19
20#include "../object/object.h"
21#include "../variant/types.h"
22#include "../primitive/types.h"
23#include "types.h"
24
25#include <string>
26
27namespace cil
28{
30 class Node : public Object
31 {
32 public:
33 std::string name;
35 std::shared_ptr<std::vector<NodePtr>> children;
41 };
42
44}
45
The Node class represents a node in a scene graph. A scene graph is a hierarchicaldata stucture used ...
Definition node.h:31
BoundingBoxPtr boundingBox
This member is a shared pointer to a BoundingBox.
Definition node.h:37
Matrix4fPtr transform
This member is a shared pointer to a Matrix4f object. This matrix represents the transformation(posit...
Definition node.h:36
QueryPtr query
This member is a shared pointer to a Query object, and it is some type of query operation performed o...
Definition node.h:40
MaterialPtr material
This member is a shared pointer to a Mateiral object, which means the node can have its own material ...
Definition node.h:38
MeshPtr mesh
This member is a shared pointer to a Mesh object, which means the node has a 3D object with its geome...
Definition node.h:34
GeometryPtr geometry
This member is a shared pointer to a Geometry object, which maybe used for specific geometric data re...
Definition node.h:39
std::string name
This memeber stores the name of the node.
Definition node.h:33
std::shared_ptr< std::vector< NodePtr > > children
This member is a dynamic array of shared pointers to the child Node objects. This allows the node to ...
Definition node.h:35
Definition object.h:23
Definition decal.h:23
std::shared_ptr< Mesh > MeshPtr
Definition types.h:32
std::shared_ptr< BoundingBox > BoundingBoxPtr
Definition types.h:36
BoundingBoxPtr getBoundingBox(const GeometryPtr &geometry, const std::string &attribName="positions")
std::shared_ptr< Geometry > GeometryPtr
Definition types.h:32
std::shared_ptr< Node > NodePtr
Definition types.h:36
std::shared_ptr< Matrix4f > Matrix4fPtr
Definition types.h:68
std::shared_ptr< Query > QueryPtr
Definition types.h:56
std::shared_ptr< Material > MaterialPtr
Definition types.h:44