- data()->addAttribute(POINT_ATTR_X, ModelAPI_AttributeDouble::type());
- data()->addAttribute(POINT_ATTR_Y, ModelAPI_AttributeDouble::type());
- data()->addAttribute(POINT_ATTR_Z, ModelAPI_AttributeDouble::type());
+ data()->addAttribute(ConstructionPlugin_Point::X(), ModelAPI_AttributeDouble::typeId());
+ data()->addAttribute(ConstructionPlugin_Point::Y(), ModelAPI_AttributeDouble::typeId());
+ data()->addAttribute(ConstructionPlugin_Point::Z(), ModelAPI_AttributeDouble::typeId());
+}
+
+void ConstructionPlugin_Point::execute()
+{
+ std::shared_ptr<GeomAPI_Pnt> aPnt(
+ new GeomAPI_Pnt(data()->real(ConstructionPlugin_Point::X())->value(),
+ data()->real(ConstructionPlugin_Point::Y())->value(),
+ data()->real(ConstructionPlugin_Point::Z())->value()));
+
+ std::shared_ptr<ModelAPI_ResultConstruction> aConstr = document()->createConstruction(data());
+ aConstr->setShape(GeomAlgoAPI_PointBuilder::point(aPnt));
+ setResult(aConstr);