Your browser does not seem to support JavaScript. As a result, your viewing experience will be diminished, and you have been placed in read-only mode.
Please download a browser that supports JavaScript, or enable it if it's disabled (i.e. NoScript).
THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 11/05/2007 at 06:29, xxxxxxxx wrote:
User Information: Cinema 4D Version: R10 Platform: Windows ; Language(s) : C++ ;
---------
if(tag) { Vector* curr_phong_normals = op->CreatePhongNormals(); GePrint("Reading Phong Tag"); for(LONG i = 0; i < nOfPolys; ++i) { phongnormals _= curr_phong_normals _; } GeFree(curr_phong_normals); .... }
I use CreatePhongNormals() to access cinemas phongnormals and export them with my plugin. For most of the standardforms this works fine. But it always crashes when I try to export the figure. (I make the figure editable and connect all parts into 1 mesh before exporting)
The funny thing is, it doesnt crash if I lower the segments count first.
Is there any other way to access the phongnormals?
On 11/05/2007 at 07:01, xxxxxxxx wrote:
it works just fine here, even with the figure. i just following code.
static void WriteObjects(BaseObject *op) { while (op) { if ((op->GetType()==Opolygon) && (op->GetTag(Tphong,0))) { LONG i,vcnt = ToPoly(op)->GetPolygonCount(); Vector *normals = ToPoly(op)->CreatePhongNormals();
for (i=0; i<vcnt; i++) { GePrint("A "+RealToString(normals[i+0].x)+", "+RealToString(normals[i+0].y)+", "+RealToString(normals[i+0].z)); GePrint("B "+RealToString(normals[i+1].x)+", "+RealToString(normals[i+1].y)+", "+RealToString(normals[i+1].z)); GePrint("C "+RealToString(normals[i+2].x)+", "+RealToString(normals[i+2].y)+", "+RealToString(normals[i+2].z)); GePrint("D "+RealToString(normals[i+3].x)+", "+RealToString(normals[i+3].y)+", "+RealToString(normals[i+3].z)); }
GeFree(normals); }
WriteObjects(op->GetDown()); op=op->GetNext(); } }
cheers, Matthias