Cumulia Illustrator Rendering Engine v1.1.0
A Rendering engine for industrial CAD/CAE model and optimized for greatest performance
 
Loading...
Searching...
No Matches
types.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 <memory>
21#include <vector>
22
23namespace cil
24{
25 class Parameters;
26 class FringeSurfaceParameters;
27 class PolygonSurfaceParameters;
28 class SliceParameters;
29 class CrinkleSliceParameters;
30 class ClipParameters;
31 class CrinkleClipParameters;
32 class ContourParameters;
33 class ThresholdParameters;
34 class IsoVolumeParameters;
35 class StreamTracerParameters;
36 class StreamSurfaceParameters;
37 class TubeParameters;
38 class RibbonParameters;
39 class PointParameters;
40 class SolidParameters;
41 class CrinkleSolidParameters;
42 class PointCloudParameters;
43
44 using ParametersPtr = std::shared_ptr<Parameters>;
45 using FringeSurfaceParametersPtr = std::shared_ptr<FringeSurfaceParameters>;
46 using PolygonSurfaceParametersPtr = std::shared_ptr<PolygonSurfaceParameters>;
47 using SliceParametersPtr = std::shared_ptr<SliceParameters>;
48 using CrinkleSliceParametersPtr = std::shared_ptr<CrinkleSliceParameters>;
49 using ClipParametersPtr = std::shared_ptr<ClipParameters>;
50 using CrinkleClipParametersPtr = std::shared_ptr<CrinkleClipParameters>;
51 using ContourParametersPtr = std::shared_ptr<ContourParameters>;
52 using ThresholdParametersPtr = std::shared_ptr<ThresholdParameters>;
53 using IsoVolumeParametersPtr = std::shared_ptr<IsoVolumeParameters>;
54 using StreamTracerParametersPtr = std::shared_ptr<StreamTracerParameters>;
55 using StreamSurfaceParametersPtr = std::shared_ptr<StreamSurfaceParameters>;
56 using TubeParametersPtr = std::shared_ptr<TubeParameters>;
57 using RibbonParametersPtr = std::shared_ptr<RibbonParameters>;
58 using PointParametersPtr = std::shared_ptr<PointParameters>;
59 using SolidParametersPtr = std::shared_ptr<SolidParameters>;
60 using CrinkleSolidParametersPtr = std::shared_ptr<CrinkleSolidParameters>;
61 using PointCloudParametersPtr = std::shared_ptr<PointCloudParameters>;
62
63 class Attributes;
65 class PartAttributes;
66 class TracerAttributes;
67 class PointAttributes;
68 class BlockAttributes;
69
70 using AttributesPtr = std::shared_ptr<Attributes>;
71 using PolygonAttributesPtr = std::shared_ptr<PolygonAttributes>;
72 using PartAttributesPtr = std::shared_ptr<PartAttributes>;
73 using TracerAttributesPtr = std::shared_ptr<TracerAttributes>;
74 using PointAttributesPtr = std::shared_ptr<PointAttributes>;
75 using BlockAttributesPtr = std::shared_ptr<BlockAttributes>;
76
77 class Filter;
78 class FringeSurface;
79 class PolygonSurface;
80 class Slice;
81 class CrinkleSlice;
82 class Clip;
83 class CrinkleClip;
84 class Contour;
85 class Threshold;
86 class IsoVolume;
87 class StreamTracer;
88 class StreamSurface;
89 class Tube;
90 class Ribbon;
91 class Probe;
92 class Block;
93 class Solid;
94 class CrinkleSolid;
95 class PointCloud;
96
97 using FilterPtr = std::shared_ptr<Filter>;
98 using FilterPtrArray = std::vector<FilterPtr>;
99
100 using FringeSurfacePtr = std::shared_ptr<FringeSurface>;
101 using PolygonSurfacePtr = std::shared_ptr<PolygonSurface>;
102 using SlicePtr = std::shared_ptr<Slice>;
103 using CrinkleSlicePtr = std::shared_ptr<CrinkleSlice>;
104 using ClipPtr = std::shared_ptr<Clip>;
105 using CrinkleClipPtr = std::shared_ptr<CrinkleClip>;
106 using ContourPtr = std::shared_ptr<Contour>;
107 using ThresholdPtr = std::shared_ptr<Threshold>;
108 using IsoVolumePtr = std::shared_ptr<IsoVolume>;
109 using StreamTracerPtr = std::shared_ptr<StreamTracer>;
110 using StreamSurfacePtr = std::shared_ptr<StreamSurface>;
111 using TubePtr = std::shared_ptr<Tube>;
112 using RibbonPtr = std::shared_ptr<Ribbon>;
113 using ProbePtr = std::shared_ptr<Probe>;
114 using BlockPtr = std::shared_ptr<Block>;
115 using SolidPtr = std::shared_ptr<Solid>;
116 using CrinkleSolidPtr = std::shared_ptr<CrinkleSolid>;
117 using PointCloudPtr = std::shared_ptr<PointCloud>;
118}
Definition attributes.h:36
Definition attributes.h:143
Definition filter.h:191
Definition filter.h:101
Definition filter.h:119
Definition filter.h:110
Definition filter.h:92
Definition filter.h:209
Definition filter.h:52
Definition filter.h:65
Definition filter.h:137
Definition attributes.h:91
Definition attributes.h:124
Definition filter.h:218
Definition attributes.h:62
Definition filter.h:74
Definition filter.h:182
Definition filter.h:173
Definition filter.h:83
Definition filter.h:200
Definition filter.h:155
Definition filter.h:146
Definition filter.h:128
Definition attributes.h:99
Definition filter.h:164
Definition decal.h:23
std::shared_ptr< RibbonParameters > RibbonParametersPtr
Definition types.h:57
std::shared_ptr< FringeSurface > FringeSurfacePtr
Definition types.h:100
std::shared_ptr< StreamSurfaceParameters > StreamSurfaceParametersPtr
Definition types.h:55
std::shared_ptr< Attributes > AttributesPtr
Definition types.h:70
std::shared_ptr< Ribbon > RibbonPtr
Definition types.h:112
std::shared_ptr< SolidParameters > SolidParametersPtr
Definition types.h:59
std::shared_ptr< CrinkleSliceParameters > CrinkleSliceParametersPtr
Definition types.h:48
std::shared_ptr< Filter > FilterPtr
Definition types.h:97
std::shared_ptr< PartAttributes > PartAttributesPtr
Definition types.h:72
std::shared_ptr< CrinkleSolidParameters > CrinkleSolidParametersPtr
Definition types.h:60
std::shared_ptr< CrinkleClip > CrinkleClipPtr
Definition types.h:105
std::shared_ptr< Probe > ProbePtr
Definition types.h:113
std::shared_ptr< ClipParameters > ClipParametersPtr
Definition types.h:49
std::shared_ptr< FringeSurfaceParameters > FringeSurfaceParametersPtr
Definition types.h:45
std::shared_ptr< StreamSurface > StreamSurfacePtr
Definition types.h:110
std::shared_ptr< Parameters > ParametersPtr
Definition types.h:44
std::shared_ptr< StreamTracerParameters > StreamTracerParametersPtr
Definition types.h:54
std::vector< FilterPtr > FilterPtrArray
Definition types.h:98
std::shared_ptr< ContourParameters > ContourParametersPtr
Definition types.h:51
std::shared_ptr< Threshold > ThresholdPtr
Definition types.h:107
std::shared_ptr< Contour > ContourPtr
Definition types.h:106
std::shared_ptr< IsoVolumeParameters > IsoVolumeParametersPtr
Definition types.h:53
std::shared_ptr< Tube > TubePtr
Definition types.h:111
std::shared_ptr< SliceParameters > SliceParametersPtr
Definition types.h:47
std::shared_ptr< Block > BlockPtr
Definition types.h:114
std::shared_ptr< CrinkleSlice > CrinkleSlicePtr
Definition types.h:103
std::shared_ptr< CrinkleClipParameters > CrinkleClipParametersPtr
Definition types.h:50
std::shared_ptr< StreamTracer > StreamTracerPtr
Definition types.h:109
std::shared_ptr< PointCloudParameters > PointCloudParametersPtr
Definition types.h:61
std::shared_ptr< CrinkleSolid > CrinkleSolidPtr
Definition types.h:116
std::shared_ptr< PointCloud > PointCloudPtr
Definition types.h:117
std::shared_ptr< IsoVolume > IsoVolumePtr
Definition types.h:108
std::shared_ptr< PolygonAttributes > PolygonAttributesPtr
Definition types.h:71
std::shared_ptr< PointParameters > PointParametersPtr
Definition types.h:58
std::shared_ptr< PolygonSurface > PolygonSurfacePtr
Definition types.h:101
std::shared_ptr< PolygonSurfaceParameters > PolygonSurfaceParametersPtr
Definition types.h:46
std::shared_ptr< TracerAttributes > TracerAttributesPtr
Definition types.h:73
std::shared_ptr< TubeParameters > TubeParametersPtr
Definition types.h:56
std::shared_ptr< Clip > ClipPtr
Definition types.h:104
std::shared_ptr< PointAttributes > PointAttributesPtr
Definition types.h:74
std::shared_ptr< Slice > SlicePtr
Definition types.h:102
std::shared_ptr< Solid > SolidPtr
Definition types.h:115
std::shared_ptr< ThresholdParameters > ThresholdParametersPtr
Definition types.h:52
std::shared_ptr< BlockAttributes > BlockAttributesPtr
Definition types.h:75