static*/
| 38 | |
| 39 | /*static*/ |
| 40 | void Mesh::Init(v8::Local<v8::Object> target) |
| 41 | { |
| 42 | // Prepare constructor template |
| 43 | v8::Local<v8::FunctionTemplate> tpl = Nan::New<v8::FunctionTemplate>(Mesh::New); |
| 44 | tpl->SetClassName(Nan::New("Mesh").ToLocalChecked()); |
| 45 | |
| 46 | // object has one internal filed ( the C++ object) |
| 47 | tpl->InstanceTemplate()->SetInternalFieldCount(1); |
| 48 | |
| 49 | _template.Reset(tpl); |
| 50 | |
| 51 | // Prototype |
| 52 | v8::Local<v8::ObjectTemplate> proto = tpl->PrototypeTemplate(); |
| 53 | |
| 54 | EXPOSE_READ_ONLY_PROPERTY_UINT32(Mesh, numTriangles); |
| 55 | EXPOSE_READ_ONLY_PROPERTY_INTEGER(Mesh, numEdges); |
| 56 | EXPOSE_READ_ONLY_PROPERTY_INTEGER(Mesh, numVertices); |
| 57 | EXPOSE_READ_ONLY_PROPERTY_INTEGER(Mesh, numNormals); |
| 58 | |
| 59 | EXPOSE_METHOD(Mesh, getEdgeIndices); |
| 60 | EXPOSE_METHOD(Mesh, getFaceTriangles); |
| 61 | EXPOSE_METHOD(Mesh, getFaceTriangleNormals); |
| 62 | |
| 63 | // other Mesh prototype members are defined in the mesh.js script |
| 64 | Nan::Set(target,Nan::New("Mesh").ToLocalChecked(), Nan::GetFunction(tpl).ToLocalChecked()); |
| 65 | |
| 66 | } |
| 67 | |
| 68 | long hashpoint(double x, double y, double z) |
| 69 | { |