Sunday, January 16, 2005

Lecture 2

scheduled: Friday Jan 14, 2005
We discussed:

1. How do we generate primitives for modeling.

  • Contour Sweep. This is very complex. I have, practically, never seen its use in CG.
  • Parameterized solids. These are very simple (should I say, trivial) structures like shpere, cone, prism, toroid, the shape of whose can be altered just by varying one or two parameters. So, you see the ease of their usage.
  • Half-Spaces. We have already discussed these in Lecture-1. They are mathematically complex, but just slightly. They can represent wide variety of primitives with ease.

2. Problems with the contour sweep method.
  • Describing the contour and the curve is mathematically complex. As an instance, creating a Right-Circular-Cylinder using parameterization is way easier than this method, with a circular contour swept over a straight line with is parallel to the normal to plane of the contour (I mean, you see this description itself is so complicated!)
  • As a continuation to the above point, we need bounding equations additionally (I mean, of course, the solid has to finite. So, the sweep has to have some bounds, which need to be specified explicitly!). While in the other two methods, the boundary-specification happens to be a gift by the method itself.
  • Degeneracy, when the normal of the contour-plane forms a right angle with the line, at any point during its motion. At this point you lose one-dimention, resulting in a 2D structure.

3. The operations on the primitives to generate complex models, can be classified as Local Operations and Global operations.
  • A local operation is local to the primitive under operation. This operation does not affect other primitives. in OO this is analogous to tampering the private members using the getter-setter methods. Local operation may need local coordinate system for tampering, depending on how the primitive is constructed an the ease of the tampering.
  • Global operations are always with respect to a Global-Coordinate-System which is shared by all the other promitives into play. Global operation on a primitive is visible to other primitives. in OO this analogous to sharing some information amongst the primitives through an interface. GO includes mainly the translation and the rotation.

0 Comments:

Post a Comment

<< Home