# Re: Creating 3D Cone

Hi Kevin,

> I would like to create a 3D cone representing a radar beam path.  I have
> been successful in creating an accurate 1D beam path using the radar's
> elevation angle and a "standard atmosphere" - for those of you
> meteorology minded folks.
>
> As I take the next step to create a 3D (or even a 2D) beam width, I need
> to have the flexibility to account for changes in the index of
> refraction in the atmosphere, hence I believe I will need to create the
> beam "top" and beam "bottom" as seperate 1D entities.
>
> If you go to:
>
> http://www.cimms.ou.edu/~kmanross/VCPRPE/NSSL_WDTB_VCPRPE-example.html
>
> and look at right panel of the image at the bottom of the page, you will
> see that the radar "Ray Path", as it is called here, can bend given
> varying atmospheric conditions.  It is also possible that conditions
> exist where the top of the beam path deviates differently from the
> bottom of the beam path.
>
> For this reason, I am considering trying to create a 3D cone from
> several Irregular2DSets (man dim = 1).  Would this be the approach to
> take, or would this be heading down the wrong path?

If you mean a cone in the sense of a 2-D surface in 3-D space then
I recommend constructing it as a Gridded3DSet with manifold dimension
= 2. The constructor is:

public Gridded3DSet(MathType type, float[][] samples, int lengthX,
int lengthY)

the samples array is dimensioned float[3][lengthX * lengthY], it
contains the 3-D coordinates of a curved 2-D grid embedded in 3-D
space. Think of drawing a rectangular grid on the surface of a
traditional cone, then bending and warping that cone to be your
"irregular" cone.

If your ray path is a set of curves in 2-D, as in your web page,
then you can draw the lines each as a Gridded2DSet with manifold
dimension = 1.

Good luck,
Bill