Example #1
0
    def deserialize(self, str_rep):
        scene = self._region.getScene()
        scene.beginChange()
        master_nodeset = self._point_cloud_group.getMasterNodeset(
        )  # removeAllNodes()
        master_nodeset.destroyAllNodes()
        master_nodeset = self._interpolation_point_group.getMasterNodeset()
        master_nodeset.destroyAllNodes()
        self.setSelection([])

        d = json.loads(str_rep)

        self._deserializeNodeset(self._point_cloud_group, d['_basic_points'])
        del d['_basic_points']
        self._deserializeNodeset(self._curve_group, d['_curve_points'])
        del d['_curve_points']
        self._plane.deserialize(json.dumps(d['_plane']))
        del d['_plane']
        self._curves = {}
        curves = d['_curves']
        for curve_index in curves:
            c = CurveModel(self)
            c.deserialize(json.dumps(curves[curve_index]))
            self.insertCurve(int(curve_index), c)
        del d['_curves']
        self._plane_attitude_store = []
        plane_attitude_store = d['_plane_attitude_store']
        for plane_attitude in plane_attitude_store:
            p = PlaneAttitude(None, None)
            p.deserialize(json.dumps(plane_attitude))
            self._plane_attitude_store.append(p)
        del d['_plane_attitude_store']
        selection = d['_selection']
        selection_field = scene.getSelectionField()
        if not selection_field.isValid():
            scene.setSelectionField(self._selection_group_field)
        del d['_selection']

        self.__dict__.update(d)
        self.setSelection(selection)
        scene.endChange()
    def deserialize(self, str_rep):
        scene = self._region.getScene()
        scene.beginChange()
        master_nodeset = self._point_cloud_group.getMasterNodeset()  # removeAllNodes()
        master_nodeset.destroyAllNodes()
        master_nodeset = self._interpolation_point_group.getMasterNodeset()
        master_nodeset.destroyAllNodes()
        self.setSelection([])

        d = json.loads(str_rep)

        self._deserializeNodeset(self._point_cloud_group, d['_basic_points'])
        del d['_basic_points']
        self._deserializeNodeset(self._curve_group, d['_curve_points'])
        del d['_curve_points']
        self._plane.deserialize(json.dumps(d['_plane']))
        del d['_plane']
        self._curves = {}
        curves = d['_curves']
        for curve_index in curves:
            c = CurveModel(self)
            c.deserialize(json.dumps(curves[curve_index]))
            self.insertCurve(int(curve_index), c)
        del d['_curves']
        self._plane_attitude_store = []
        plane_attitude_store = d['_plane_attitude_store']
        for plane_attitude in plane_attitude_store:
            p = PlaneAttitude(None, None)
            p.deserialize(json.dumps(plane_attitude))
            self._plane_attitude_store.append(p)
        del d['_plane_attitude_store']
        selection = d['_selection']
        selection_field = scene.getSelectionField()
        if not selection_field.isValid():
            scene.setSelectionField(self._selection_group_field)
        del d['_selection']

        self.__dict__.update(d)
        self.setSelection(selection)
        scene.endChange()