#include <Iguana/Inventor/interface/IgSoSiStrips.h>
Public Member Functions | |
IgSoSiStrips (void) | |
Static Public Member Functions | |
static void | initClass (void) |
Public Attributes | |
SoMFShort | adc |
SoSFFloat | gain |
SoSFFloat | length |
SoSFFloat | offset |
SoSFFloat | pitch |
SoMFShort | strip |
SoSFFloat | thickness |
SoSFFloat | width |
Protected Member Functions | |
virtual void | refresh (void) |
Private Member Functions | |
SO_KIT_CATALOG_ENTRY_HEADER (pulses) | |
SO_KIT_CATALOG_ENTRY_HEADER (translation) | |
SO_KIT_HEADER (IgSoSiStrips) |
Definition at line 27 of file IgSoSiStrips.h.
IgSoSiStrips::IgSoSiStrips | ( | void | ) |
Definition at line 25 of file IgSoSiStrips.cc.
References adc, FALSE, gain, length, offset, pitch, IgSoShapeKit::setUpConnections(), strip, thickness, TRUE, and width.
00026 { 00027 SO_KIT_CONSTRUCTOR (IgSoSiStrips); 00028 SO_KIT_ADD_FIELD (thickness, (0.03)); 00029 SO_KIT_ADD_FIELD (width, (1.28)); 00030 SO_KIT_ADD_FIELD (length, (8.0)); 00031 SO_KIT_ADD_FIELD (pitch, (0.005)); 00032 SO_KIT_ADD_FIELD (offset, (0.000)); 00033 SO_KIT_ADD_FIELD (strip, (0)); 00034 SO_KIT_ADD_FIELD (adc, (0)); 00035 SO_KIT_ADD_FIELD (gain, (0.001)); 00036 SO_KIT_ADD_CATALOG_ENTRY (translation, SoTranslation, FALSE, separator,\x0, TRUE); 00037 SO_KIT_ADD_CATALOG_ENTRY (pulses, SoSeparator, FALSE, separator,\x0, TRUE); 00038 SO_KIT_INIT_INSTANCE (); 00039 setUpConnections (true, true); 00040 }
Reimplemented from IgSoShapeKit.
Definition at line 22 of file IgSoSiStrips.cc.
Referenced by initNodes(), and initShapes().
00023 { SO_KIT_INIT_CLASS (IgSoSiStrips, IgSoShapeKit, "IgSoShapeKit"); }
Reimplemented from IgSoShapeKit.
Definition at line 43 of file IgSoSiStrips.cc.
References adc, gain, i, length, NULL, offset, pitch, strip, thickness, and width.
00044 { 00045 if (strip.getNum () != adc.getNum ()) 00046 { 00047 setPart ("translation", NULL); 00048 setPart ("pulses", NULL); 00049 00050 return; 00051 } 00052 00053 00054 SoTranslation *translation = new SoTranslation; 00055 SoSeparator *pulses = new SoSeparator; 00056 00057 translation->translation = SbVec3f (0, -width.getValue ()/2 + offset.getValue (), 0); 00058 00059 for (int i = 0; i < strip.getNum (); i++) 00060 { 00061 SoSeparator *pulse = new SoSeparator; 00062 SoTranslation *inc = new SoTranslation; 00063 SoCube *hit = new SoCube; 00064 00065 inc->translation = SbVec3f (0, pitch.getValue () * strip[i], 0); 00066 hit->width = thickness.getValue () + adc[i] * gain.getValue (); 00067 hit->height = pitch.getValue (); 00068 hit->depth = length.getValue () - pitch.getValue (); 00069 00070 pulse->addChild (inc); 00071 pulse->addChild (hit); 00072 pulses->addChild (pulse); 00073 } 00074 00075 setPart ("translation", translation); 00076 setPart ("pulses", pulses); 00077 }
IgSoSiStrips::SO_KIT_CATALOG_ENTRY_HEADER | ( | pulses | ) | [private] |
IgSoSiStrips::SO_KIT_CATALOG_ENTRY_HEADER | ( | translation | ) | [private] |
IgSoSiStrips::SO_KIT_HEADER | ( | IgSoSiStrips | ) | [private] |
SoMFShort IgSoSiStrips::adc |
SoSFFloat IgSoSiStrips::gain |
SoSFFloat IgSoSiStrips::length |
SoSFFloat IgSoSiStrips::offset |
SoSFFloat IgSoSiStrips::pitch |
SoMFShort IgSoSiStrips::strip |
SoSFFloat IgSoSiStrips::thickness |
SoSFFloat IgSoSiStrips::width |