Display question
- To: mathgroup at smc.vnet.net
- Subject: [mg110551] Display question
- From: "S. B. Gray" <stevebg at ROADRUNNER.COM>
- Date: Fri, 25 Jun 2010 07:26:58 -0400 (EDT)
- Reply-to: stevebg at ROADRUNNER.COM
I have a Graphics3D with various separate elements. Some elements can be
made to appear or not. If I omit elements that range beyond the others,
the display rescales so that the remaining ones fill the allotted
display size. I would like all displays to appear at the same scale and
in the same position in the display area, regardless of what elements
are enabled. There must be a way to do this, but how ????
(Note: I'm using cylinders with very short lengths for the primitive,
because 3D circles are not available.)
Second question: my displays have lots of white space around them. I
thought that setting ImageMargins->0 would eliminate them, but no. ??
Here is the display code (may be obscure without supporting code).
sel={0} says display everything, else only a few cylinders.
show[sel_] := Module[{tcyl, txtb},
If [ sel == {0},
tcyl = Table[Cylinder[{plancirc[[i, 2, 1]],plancirc[[i, 2,
1]] + 0.01*plancirc[[i, 2, 3]]},plancirc[[i, 2, 2]]], {i , 1, sub3L}];
txtb = Table[ Style[Text[IntegerString[ix, 10], centers[[ix]]],
FontSize -> 15, Bold, FontFamily -> "Arial"], {ix, sub3L}],
tcyl = Table[Cylinder[{plancirc[[sel[[i]], 2,
1]],plancirc[[sel[[i]], 2, 1]] + 0.01*plancirc[[sel[[i]], 2,
3]]},plancirc[[sel[[i]], 2, 2]]], {i , 1, Length[sel]}];
txtb = Table[ Style[Text[IntegerString[sel[[i]], 10],
centers[[sel[[i]]]]],FontSize -> 15, Bold, FontFamily -> "Arial"], {i,
Length[sel]}] ];
Graphics3D[{Yellow, Opacity[.6], EdgeForm[Black], tcyl,
Blue, Opacity[.8], Sphere[points, .40],White, Opacity[.6],
Table[Style[Text[xr, points[[xr]]], FontSize -> 24,
FontFamily -> "Arial"],{xr, 1, numbr}],
PointSize[.011], Black, txtb},
Boxed -> False, ImageSize -> 800, Background -> LightBlue,
ImageMargins -> 0, ViewPoint -> {10, 10, 10}]
]
Steve Gray