Cumulia Illustrator Rendering Engine v1.1.0
A Rendering engine for industrial CAD/CAE model and optimized for greatest performance
 
Loading...
Searching...
No Matches
attributes.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 2024-10-31
15// Version V1.1.0
16//##################################################################################################
17
18#pragma once
19
20#include <string>
21#include <tuple>
22#include <memory>
23
24#include <cilcore.h>
25
26#include "../viz/types.h"
27
28namespace cil
29{
30 class DataPart;
31 class VizPart;
32 class VizBody;
33 class ScenarioSettings;
34
36 {
37 protected:
38 std::string m_type;
39
40 public:
41 enum class Appearence {
42 None,
43 Color,
44 Result,
45 Texture,
46 };
47
48 bool visible;
50 std::string scalar;
51 std::string vector;
52 std::string offset;
53 std::shared_ptr<Color3f> color;
54
56 virtual ~Attributes();
57
58 const std::string& type() const;
59 };
60
89
91 {
92 public:
94
95 std::map<DataPart*, std::shared_ptr<PolygonAttributes>> children;
96 };
97
99 {
100 public:
101 enum class Display {
102 None,
103
104 Line,
105 Sphere,
106 Ribbon,
107 Cylinder,
108
113
116 };
117
119
121 };
122
124 {
125 public:
126 enum class Display {
127 None,
128 Point,
129 Circle,
130 Ring,
131 Star,
132 Square,
133 Sphere,
134 Cloud,
135 };
136
138
140 };
141
143 {
144 public:
145 enum class Display {
146 None,
147 Sphere,
148 Cube,
150 };
151
153
155 };
156}
Definition attributes.h:36
std::string m_type
Definition attributes.h:38
std::string offset
Definition attributes.h:52
std::string vector
Definition attributes.h:51
virtual ~Attributes()
bool visible
Definition attributes.h:48
Appearence appearence
Definition attributes.h:49
Appearence
Definition attributes.h:41
const std::string & type() const
std::shared_ptr< Color3f > color
Definition attributes.h:53
std::string scalar
Definition attributes.h:50
Definition attributes.h:143
Display display
Definition attributes.h:152
Display
Definition attributes.h:145
Definition attributes.h:91
std::map< DataPart *, std::shared_ptr< PolygonAttributes > > children
Definition attributes.h:95
Definition attributes.h:124
Display
Definition attributes.h:126
Display display
Definition attributes.h:137
Definition attributes.h:62
Display display
Definition attributes.h:85
Display
Definition attributes.h:64
Definition attributes.h:99
Display display
Definition attributes.h:118
Display
Definition attributes.h:101
Definition decal.h:23