Building complex geometries using simple 3d primatives
William J. Deninger (deninger@uiuc.edu)
Mon, 17 Nov 1997 14:36:03 -0600
This is a multi-part message in MIME format.
------=_NextPart_000_000D_01BCF366.21A0EEA0
Content-Type: multipart/alternative;
boundary="----=_NextPart_001_000E_01BCF366.21A27540"
------=_NextPart_001_000E_01BCF366.21A27540
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Hello,
I have a peculiar question concerning implementing 3d graphics =
primitives inside one another. Suppose I have a detector composed of a =
simple block of aluminum with a hole drilled in the middle. I would =
suspect we would use TBRIK of material Al and TTUBE of material VACUUM. =
How does root know which material takes precedence in a volume shared by =
two materials such as the TTUBE inside the TBRIK?
Also, suppose those two primitives shared a common origin. Is it =
possible to have both primitives referenced by the same TNode, or is it =
necessary to have a TNode duplicated? I'm guessing that in such an =
instance, one would want to combine all objects "attached" sharing a =
node to be represented by a class of type TShape. But then the question =
becomes, which virtual functions of TShape are necessary to overload in =
order to get a correct TShape behavior?
And finally, as the geometry becomes complicated I need to highlight =
certain primitives preferably without redrawing the entire detector =
geometry. Specifically, I need to mark straws in a drift chamber in =
order to aid debugging my tracking code.=20
William J. Deninger
deninger@uiuc.edu
------=_NextPart_001_000E_01BCF366.21A27540
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD W3 HTML//EN">
Hello,
I have a peculiar question concerning implementing 3d graphics =
primitives=20
inside one another. Suppose I have a detector composed of a simple =
block=20
of aluminum with a hole drilled in the middle. I would suspect we =
would=20
use TBRIK of material Al and TTUBE of material VACUUM. How does =
root know=20
which material takes precedence in a volume shared by two materials such =
as the=20
TTUBE inside the TBRIK?
Also, suppose those two primitives shared a common origin. Is it =
possible=20
to have both primitives referenced by the same TNode, or is it necessary =
to have=20
a TNode duplicated? I'm guessing that in such an instance, one =
would want=20
to combine all objects "attached" sharing a node to be =
represented by=20
a class of type TShape. But then the question becomes, which =
virtual=20
functions of TShape are necessary to overload in order to get a correct =
TShape=20
behavior?
And finally, as the geometry becomes complicated I need to =
highlight=20
certain primitives preferably without redrawing the entire detector=20
geometry. Specifically, I need to mark straws in a drift chamber =
in order=20
to aid debugging my tracking code.
William J. Deninger
------=_NextPart_001_000E_01BCF366.21A27540--
------=_NextPart_000_000D_01BCF366.21A0EEA0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-ID: <000501bcf398$6c2f29a0$5e0dae80@g2pc1.npl.uiuc.edu>
R0lGODlhFAAUAPcAAP//////zP//mf//Zv//M///AP/M///MzP/Mmf/MZv/MM//MAP+Z//+ZzP+Z
mf+ZZv+ZM/+ZAP9m//9mzP9mmf9mZv9mM/9mAP8z//8zzP8zmf8zZv8zM/8zAP8A//8AzP8Amf8A
Zv8AM/8AAMz//8z/zMz/mcz/Zsz/M8z/AMzM/8zMzMzMmczMZszMM8zMAMyZ/8yZzMyZmcyZZsyZ
M8yZAMxm/8xmzMxmmcxmZsxmM8xmAMwz/8wzzMwzmcwzZswzM8wzAMwA/8wAzMwAmcwAZswAM8wA
AJn//5n/zJn/mZn/Zpn/M5n/AJnM/5nMzJnMmZnMZpnMM5nMAJmZ/5mZzJmZmZmZZpmZM5mZAJlm
/5lmzJlmmZlmZplmM5lmAJkz/5kzzJkzmZkzZpkzM5kzAJkA/5kAzJkAmZkAZpkAM5kAAGb//2b/
zGb/mWb/Zmb/M2b/AGbM/2bMzGbMmWbMZmbMM2bMAGaZ/2aZzGaZmWaZZmaZM2aZAGZm/2ZmzGZm
mWZmZmZmM2ZmAGYz/2YzzGYzmWYzZmYzM2YzAGYA/2YAzGYAmWYAZmYAM2YAADP//zP/zDP/mTP/
ZjP/MzP/ADPM/zPMzDPMmTPMZjPMMzPMADOZ/zOZzDOZmTOZZjOZMzOZADNm/zNmzDNmmTNmZjNm
MzNmADMz/zMzzDMzmTMzZjMzMzMzADMA/zMAzDMAmTMAZjMAMzMAAAD//wD/zAD/mQD/ZgD/MwD/
AADM/wDMzADMmQDMZgDMMwDMAACZ/wCZzACZmQCZZgCZMwCZAABm/wBmzABmmQBmZgBmMwBmAAAz
/wAzzAAzmQAzZgAzMwAzAAAA/wAAzAAAmQAAZgAAMwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAFAAUAEAIQwBJCBxI
sKBBAAgTKlyYUCDDhwsdQpwoceLDihYjksh4cSNHjR9BhmzocSQAjCFRflTJkWVGlxZhUiw5UiZE
gzhzBgQAOw==
------=_NextPart_000_000D_01BCF366.21A0EEA0--