src/gl/common.h

changeset 73
97df974b5ed5
parent 55
cb81ecb5fb23
child 80
764381756899
child 91
9eb5e06f34c3
equal deleted inserted replaced
72:7c27cda03747 73:97df974b5ed5
75 ConditionalEdge 75 ConditionalEdge
76 }; 76 };
77 Type type; 77 Type type;
78 glm::vec3 vertices[4]; 78 glm::vec3 vertices[4];
79 ldraw::Color color; 79 ldraw::Color color;
80 ldraw::Id id; 80 ldraw::id_t id;
81 81
82 /** 82 /**
83 * @return amount of vertices used for geometry 83 * @return amount of vertices used for geometry
84 */ 84 */
85 inline unsigned int numPolygonVertices() const 85 inline unsigned int numPolygonVertices() const
111 111
112 Q_DECLARE_METATYPE(gl::Polygon) 112 Q_DECLARE_METATYPE(gl::Polygon)
113 113
114 namespace gl 114 namespace gl
115 { 115 {
116 inline Polygon edgeLine(const glm::vec3& v_1, const glm::vec3& v_2, ldraw::Color color, ldraw::Id id) 116 inline Polygon edgeLine(const glm::vec3& v_1, const glm::vec3& v_2, ldraw::Color color, ldraw::id_t id)
117 { 117 {
118 return {Polygon::EdgeLine, {v_1, v_2}, color, id}; 118 return {Polygon::EdgeLine, {v_1, v_2}, color, id};
119 } 119 }
120 120
121 inline Polygon triangle( 121 inline Polygon triangle(
122 const glm::vec3& v_1, 122 const glm::vec3& v_1,
123 const glm::vec3& v_2, 123 const glm::vec3& v_2,
124 const glm::vec3& v_3, 124 const glm::vec3& v_3,
125 ldraw::Color color, 125 ldraw::Color color,
126 ldraw::Id id) 126 ldraw::id_t id)
127 { 127 {
128 return {Polygon::Triangle, {v_1, v_2, v_3}, color, id}; 128 return {Polygon::Triangle, {v_1, v_2, v_3}, color, id};
129 } 129 }
130 130
131 inline Polygon quadrilateral( 131 inline Polygon quadrilateral(
132 const glm::vec3& v_1, 132 const glm::vec3& v_1,
133 const glm::vec3& v_2, 133 const glm::vec3& v_2,
134 const glm::vec3& v_3, 134 const glm::vec3& v_3,
135 const glm::vec3& v_4, 135 const glm::vec3& v_4,
136 ldraw::Color color, 136 ldraw::Color color,
137 ldraw::Id id) 137 ldraw::id_t id)
138 { 138 {
139 return {Polygon::Quadrilateral, {v_1, v_2, v_3, v_4}, color, id}; 139 return {Polygon::Quadrilateral, {v_1, v_2, v_3, v_4}, color, id};
140 } 140 }
141 141
142 inline Polygon conditionalEdge( 142 inline Polygon conditionalEdge(
143 const glm::vec3& v_1, 143 const glm::vec3& v_1,
144 const glm::vec3& v_2, 144 const glm::vec3& v_2,
145 const glm::vec3& control_1, 145 const glm::vec3& control_1,
146 const glm::vec3& control_2, 146 const glm::vec3& control_2,
147 ldraw::Color color, 147 ldraw::Color color,
148 ldraw::Id id) 148 ldraw::id_t id)
149 { 149 {
150 return {Polygon::ConditionalEdge, {v_1, v_2, control_1, control_2}, color, id}; 150 return {Polygon::ConditionalEdge, {v_1, v_2, control_1, control_2}, color, id};
151 } 151 }
152 152
153 // Vbo names 153 // Vbo names

mercurial