96 room_visAtts.SetForceWireframe(
true);
110 G4RotateZ3D(90.*deg));
115 G4RotateZ3D(-90.*deg));
127 G4RotateZ3D(60.*deg) *
132 G4Transform3D A = G4RotateZ3D(90.*deg);
133 G4Transform3D B = G4RotateY3D(90.*deg);
134 G4Transform3D C = G4RotateZ3D(-20.*deg) ;
135 G4Transform3D D = G4TranslateZ3D(
fChairY);
136 G4Transform3D E = G4TranslateY3D(-0.5 *
fRoomY);
137 G4Transform3D chair_transform = E*D*C*B*A;
138 Chair(chair_visAtts, chair_transform);
174 const G4Transform3D& transform)
176 static const G4double extender = 100.*m;
177 static const G4Vector3D x(1,0,0);
178 static const G4Vector3D y(0,1,0);
179 static const G4Vector3D z(0,0,1);
182 G4bool any =
false, A =
false, X =
false, Y =
false, Z =
false;
190 G4bool isAuxEdgeVisible =
false;
195 notLastFace = polyhedron->GetNextFacet(n, nodes);
200 notLastEdge = polyhedron->GetNextEdge(v1, v2, edgeFlag);
201 if (isAuxEdgeVisible || edgeFlag > 0) {
202 G4Vector3D v21 = v2 - v1;
204 G4Vector3D v21a = v21;
205 v21a.transform(transform);
209 (Z && abs(v21a.z()) >
210 sqrt(v21a.x()*v21a.x()+v21a.y()*v21a.y())) ||
211 (X && abs(v21a.x()) >
212 sqrt(v21a.y()*v21a.y()+v21a.z()*v21a.z())) ||
213 (Y && abs(v21a.y()) >
214 sqrt(v21a.x()*v21a.x()+v21a.x()*v21a.z()))) {
216 edge.SetVisAttributes(
G4Colour(.2,.2,.2));
217 edge.push_back(v1 - extender * v21.unit());
218 edge.push_back(v2 + extender * v21.unit());
222 }
while (notLastEdge);
223 }
while (notLastFace);