136 |
|
point, 3-D vector (without translation), rotate a 3-D vector (without |
137 |
|
scaling) and scale a floating-point value, respectively. |
138 |
|
|
139 |
+ |
Object Support |
140 |
+ |
============== |
141 |
+ |
The MGF language includes a single entity for naming objects, MG_E_OBJECT. |
142 |
+ |
It is mostly provided as a convenience for the user, so that individual |
143 |
+ |
geometric parts may be easily identified. Although supporting this entity |
144 |
+ |
directly is possible, it's hierarchical nature requires maintaining a stack |
145 |
+ |
of object names. The object handler in object.c provides this functionality. |
146 |
+ |
Simply set the MG_E_OBJECT entry of the mg_ehand array to obj_handler, |
147 |
+ |
and the current object name list will be kept in the global array obj_name. |
148 |
+ |
The number of names is stored in the global obj_nnames variable. To clear |
149 |
+ |
this array (freeing any memory used in the process), call obj_clear. |
150 |
+ |
|
151 |
|
Examples |
152 |
|
======== |
153 |
|
Two example translator programs are included with this package. |
173 |
|
Copyright |
174 |
|
========= |
175 |
|
At this point, the legal issues related to this parser have not been |
176 |
< |
considered. The intent is to offer it free of charge to all those who |
176 |
> |
worked out. The intent is to offer it free of charge to all those who |
177 |
|
wish to use it (with no guarantees, of course). However, we may decide |
178 |
|
that copyright protections are necessary to prevent unauthorized versions |
179 |
|
of the parser that do not properly support the MGF standard from getting |