32 std::shared_ptr<std::vector<std::shared_ptr<T>>>
m_entities;
36 SelectionBuilder(
const std::shared_ptr<std::vector<std::shared_ptr<T>>>&
entities,
const std::function<std::shared_ptr<Node>(std::shared_ptr<T>)>& entity2node)
46 std::shared_ptr<std::vector<std::shared_ptr<T>>>
entities()
56 virtual std::shared_ptr<std::vector<std::shared_ptr<Node>>>
build() = 0;
63 EntityBuilder(
const std::shared_ptr<std::vector<std::shared_ptr<T>>>&
entities,
const std::function<std::shared_ptr<Node>(std::shared_ptr<T>)>& entity2node)
72 virtual std::shared_ptr<std::vector<std::shared_ptr<Node>>>
build()
76 unsigned int index = 0;
82 auto value =
_clr4((
unsigned char)index / 255.0, (
unsigned char)(index >> 8) / 255.0, (
unsigned char)(index >> 16) / 255.0, (
unsigned char)(index >> 24) / 255.0);
88 nodes->push_back(node);
102 FaceBuilder(
const std::shared_ptr<std::vector<std::shared_ptr<T>>>&
entities,
const std::function<std::shared_ptr<Node>(std::shared_ptr<T>)>& entity2node)
112 template <
typename T>
116 VertexBuilder(
const std::shared_ptr<std::vector<std::shared_ptr<T>>>&
entities,
const std::function<std::shared_ptr<Node>(std::shared_ptr<T>)>& entity2node)
126 template <
typename T>
130 EdgeBuilder(
const std::shared_ptr<std::vector<std::shared_ptr<T>>>&
entities,
const std::function<std::shared_ptr<Node>(std::shared_ptr<T>)>& entity2node)
140 template <
typename T>
144 AttributeBuilder(
const std::shared_ptr<std::vector<std::shared_ptr<T>>>&
entities,
const std::function<std::shared_ptr<Node>(std::shared_ptr<T>)>& entity2node)
153 virtual std::shared_ptr<std::vector<std::shared_ptr<Node>>>
build()
162 nodes->push_back(node);
170 template <
typename T>
174 PositionBuilder(
const std::shared_ptr<std::vector<std::shared_ptr<T>>>&
entities,
const std::function<std::shared_ptr<Node>(std::shared_ptr<T>)>& entity2node)
184 template <
typename T>
188 NormalBuilder(
const std::shared_ptr<std::vector<std::shared_ptr<T>>>&
entities,
const std::function<std::shared_ptr<Node>(std::shared_ptr<T>)>& entity2node)
198 template <
typename T>
202 PrimitiveBuilder(
const std::shared_ptr<std::vector<std::shared_ptr<T>>>&
entities,
const std::function<std::shared_ptr<Node>(std::shared_ptr<T>)>& entity2node)
virtual ~AttributeBuilder()
Definition builder.h:149
AttributeBuilder(const std::shared_ptr< std::vector< std::shared_ptr< T > > > &entities, const std::function< std::shared_ptr< Node >(std::shared_ptr< T >)> &entity2node)
Definition builder.h:144
virtual std::shared_ptr< std::vector< std::shared_ptr< Node > > > build()
Definition builder.h:153
virtual ~EdgeBuilder()
Definition builder.h:135
EdgeBuilder(const std::shared_ptr< std::vector< std::shared_ptr< T > > > &entities, const std::function< std::shared_ptr< Node >(std::shared_ptr< T >)> &entity2node)
Definition builder.h:130
EntityBuilder(const std::shared_ptr< std::vector< std::shared_ptr< T > > > &entities, const std::function< std::shared_ptr< Node >(std::shared_ptr< T >)> &entity2node)
Definition builder.h:63
virtual ~EntityBuilder()
Definition builder.h:68
virtual std::shared_ptr< std::vector< std::shared_ptr< Node > > > build()
Definition builder.h:72
FaceBuilder(const std::shared_ptr< std::vector< std::shared_ptr< T > > > &entities, const std::function< std::shared_ptr< Node >(std::shared_ptr< T >)> &entity2node)
Definition builder.h:102
virtual ~FaceBuilder()
Definition builder.h:107
NormalBuilder(const std::shared_ptr< std::vector< std::shared_ptr< T > > > &entities, const std::function< std::shared_ptr< Node >(std::shared_ptr< T >)> &entity2node)
Definition builder.h:188
virtual ~NormalBuilder()
Definition builder.h:193
PositionBuilder(const std::shared_ptr< std::vector< std::shared_ptr< T > > > &entities, const std::function< std::shared_ptr< Node >(std::shared_ptr< T >)> &entity2node)
Definition builder.h:174
virtual ~PositionBuilder()
Definition builder.h:179
PrimitiveBuilder(const std::shared_ptr< std::vector< std::shared_ptr< T > > > &entities, const std::function< std::shared_ptr< Node >(std::shared_ptr< T >)> &entity2node)
Definition builder.h:202
virtual ~PrimitiveBuilder()
Definition builder.h:207
std::shared_ptr< std::vector< std::shared_ptr< T > > > entities()
Definition builder.h:46
void setEntities(const std::shared_ptr< std::vector< std::shared_ptr< T > > > &entities)
Definition builder.h:51
std::shared_ptr< std::vector< std::shared_ptr< T > > > m_entities
Definition builder.h:32
virtual ~SelectionBuilder()
Definition builder.h:42
SelectionBuilder(const std::shared_ptr< std::vector< std::shared_ptr< T > > > &entities, const std::function< std::shared_ptr< Node >(std::shared_ptr< T >)> &entity2node)
Definition builder.h:36
std::function< std::shared_ptr< Node >(std::shared_ptr< T >)> m_entity2node
Definition builder.h:33
virtual std::shared_ptr< std::vector< std::shared_ptr< Node > > > build()=0
virtual ~VertexBuilder()
Definition builder.h:121
VertexBuilder(const std::shared_ptr< std::vector< std::shared_ptr< T > > > &entities, const std::function< std::shared_ptr< Node >(std::shared_ptr< T >)> &entity2node)
Definition builder.h:116
MaterialPtr _material(const ProgramPtr &program=nullptr, const std::shared_ptr< std::map< std::string, VariantPtr > > ¶meters=nullptr, const std::shared_ptr< std::vector< StatePtr > > &states=nullptr)
std::shared_ptr< std::vector< NodePtr > > _nodes(const std::vector< NodePtr > &nodes={})
std::shared_ptr< std::map< std::string, VariantPtr > > _parameters(const std::map< std::string, VariantPtr > ¶meters={})