static*/
| 10 | |
| 11 | /*static*/ |
| 12 | void Solid::Init(v8::Local<v8::Object> target) |
| 13 | { |
| 14 | |
| 15 | |
| 16 | // Prepare constructor template |
| 17 | v8::Local<v8::FunctionTemplate> tpl = Nan::New<v8::FunctionTemplate>(Solid::New); |
| 18 | tpl->SetClassName(Nan::New("Solid").ToLocalChecked()); |
| 19 | |
| 20 | // object has one internal filed ( the C++ object) |
| 21 | tpl->InstanceTemplate()->SetInternalFieldCount(1); |
| 22 | |
| 23 | _template.Reset(tpl); |
| 24 | |
| 25 | // Prototype |
| 26 | v8::Local<v8::ObjectTemplate> proto = tpl->PrototypeTemplate(); |
| 27 | |
| 28 | Base::InitProto(proto); |
| 29 | |
| 30 | EXPOSE_METHOD(Solid,getEdges); |
| 31 | EXPOSE_METHOD(Solid,getVertices); |
| 32 | EXPOSE_METHOD(Solid,getFaces); |
| 33 | EXPOSE_METHOD(Solid,getOuterShell); |
| 34 | EXPOSE_METHOD(Solid,getShells); |
| 35 | EXPOSE_METHOD(Solid,getSolids); |
| 36 | EXPOSE_METHOD(Solid,getShapeName); |
| 37 | EXPOSE_METHOD(Solid,getAdjacentFaces); |
| 38 | EXPOSE_METHOD(Solid,getCommonEdges); |
| 39 | EXPOSE_METHOD(Solid,createMesh); |
| 40 | |
| 41 | |
| 42 | EXPOSE_READ_ONLY_PROPERTY_DOUBLE (Solid,area); |
| 43 | EXPOSE_READ_ONLY_PROPERTY_DOUBLE (Solid,volume); |
| 44 | |
| 45 | EXPOSE_READ_ONLY_PROPERTY_INTEGER(Solid,numFaces); |
| 46 | EXPOSE_READ_ONLY_PROPERTY_INTEGER(Solid,numSolids); |
| 47 | EXPOSE_READ_ONLY_PROPERTY_INTEGER(Solid,numShells); |
| 48 | |
| 49 | EXPOSE_READ_ONLY_PROPERTY(_mesh,mesh); |
| 50 | EXPOSE_READ_ONLY_PROPERTY_BOOLEAN(Solid,hasMesh); |
| 51 | |
| 52 | Nan::Set(target, Nan::New("Solid").ToLocalChecked(), Nan::GetFunction(tpl).ToLocalChecked()); |
| 53 | |
| 54 | } |
| 55 | |
| 56 | |
| 57 | NAN_METHOD(Solid::InitNew) |