59 scenePrimitives( scenePrimitives ), drawRadialLine( NULL ),
60 clearRadialLines( NULL ), markTargetCenter( NULL ),
61 highlightInnerCrystals( NULL ), setColour( NULL )
65 drawRadialLine->
SetGuidance(
"Draw radial line with specified theta, phi "
66 "(both in deg!)\n and length (in cm!)" );
68 "RadialLineLength",
true );
69 drawRadialLine->
SetRange(
"RadialLineLength >= 0." );
75 clearRadialLines->
SetGuidance(
"Clear all existing radial lines" );
80 markTargetCenter->
SetGuidance(
"Mark/unmark target center" );
87 highlightInnerCrystals->
SetGuidance(
"Highlight inner crystals in "
88 "calorimeters on/off" );
95 setColour->
SetGuidance(
"Set colour of specified scene primitive" );
98 parameter->
SetGuidance(
"Scene primitive, possible values:\n"
99 " tc - target center mark,\n"
100 " rl - radial lines,\n"
101 " ic - inner crystal highlights" );
105 parameter->
SetGuidance(
"Red component or string, e.g. \"blue\", in which "
106 "case succeeding colour\n components are ignored" );
127 delete drawRadialLine;
128 delete clearRadialLines;
129 delete markTargetCenter;
130 delete highlightInnerCrystals;
140 if ( cmd == drawRadialLine )
147 if ( cmd == clearRadialLines )
152 if ( cmd == markTargetCenter )
158 if ( cmd == highlightInnerCrystals )
164 if ( cmd == setColour )
171 G4Colour colour( 1, green, blue, opacity );
172 std::istringstream iss( value );
174 iss >> name >> redOrString >> green >> blue >> opacity;
176 if ( std::isalpha( redOrString[
size_t( 0 ) ] ) )
209 scenePrimitives->
SetColour( primitive, colour );