def units(self, value): if value != self._units: from ada.core.utils import unit_length_conversion from ada.occ.utils import make_box_by_points scale_factor = unit_length_conversion(self._units, value) self.p1 = tuple([x * scale_factor for x in self.p1]) self.p2 = tuple([x * scale_factor for x in self.p2]) self._geom = make_box_by_points(self.p1, self.p2) self._units = value
def units(self, value): if value != self._units: from ada.config import Settings from ada.core.utils import unit_length_conversion scale_factor = unit_length_conversion(self._units, value) tol = Settings.mmtol if value == "mm" else Settings.mtol self.poly.scale(scale_factor, tol) self._extrude_depth = self._extrude_depth * scale_factor self._units = value
def units(self, value): if value != self._units: from ada.core.utils import unit_length_conversion from ada.occ.utils import make_sphere scale_factor = unit_length_conversion(self._units, value) self.cog = tuple([x * scale_factor for x in self.cog]) self.radius = self.radius * scale_factor self._geom = make_sphere(self.cog, self.radius) self._units = value
def units(self, value): if value != self._units: from ada.core.utils import unit_length_conversion scale_factor = unit_length_conversion(self._units, value) self.p_roundoff(scale_factor) if self._r is not None: self._r *= scale_factor self._units = value
def units(self, value): from ada.occ.utils import make_cylinder_from_points if value != self._units: from ada.core.utils import unit_length_conversion scale_factor = unit_length_conversion(self._units, value) self.p1 = [x * scale_factor for x in self.p1] self.p2 = [x * scale_factor for x in self.p2] self.r = self.r * scale_factor self._geom = make_cylinder_from_points(self.p1, self.p2, self.r)
def units(self, value): if self._units != value: from ada.core.utils import unit_length_conversion scale_factor = unit_length_conversion(self._units, value) tol = Settings.mmtol if value == "mm" else Settings.mtol self._t *= scale_factor self.poly.scale(scale_factor, tol) for pen in self.penetrations: pen.units = value self.material.units = value self._units = value
def units(self, value): if value != self._units: from ada.config import Settings from ada.core.utils import unit_length_conversion scale_factor = unit_length_conversion(self._units, value) tol = Settings.mmtol if value == "mm" else Settings.mtol self.poly.scale(scale_factor, tol) self._revolve_origin = [x * scale_factor for x in self.revolve_origin] self._geom = self._poly.make_revolve_solid( self._revolve_axis, self._revolve_angle, self._revolve_origin, )
def units(self, value): if value != self._units: from ada.core.utils import unit_length_conversion scale_factor = unit_length_conversion(self._units, value) if self._geom is not None: from ada.occ.utils import transform_shape self._geom = transform_shape(self.geom, scale_factor) if self.metadata.get("ifc_source") is True: raise NotImplementedError() self._units = value
def units(self, value): if self._units != value: from ada.core.utils import unit_length_conversion scale_factor = unit_length_conversion(self._units, value) if self.poly_inner is not None: self.poly_inner.scale(scale_factor, Settings.point_tol) if self.poly_outer is not None: self.poly_outer.scale(scale_factor, Settings.point_tol) vals = [ "h", "w_top", "w_btn", "t_w", "t_ftop", "t_fbtn", "r", "wt" ] for key in self.__dict__.keys(): if self.__dict__[key] is not None: if key[1:] in vals: self.__dict__[key] *= scale_factor self._units = value
def units(self, value): if value != self._units: from ada.core.utils import unit_length_conversion scale_factor = unit_length_conversion(self._units, value) self._height *= scale_factor self._thickness *= scale_factor self._offset *= scale_factor self.placement.origin = np.array([x * scale_factor for x in self.placement.origin]) self._points = [tuple([x * scale_factor for x in p]) for p in self.points] self._segments = list(zip(self._points[:-1], self.points[1:])) for pen in self._penetrations: pen.units = value for opening in self._openings: opening[2] = tuple([x * scale_factor for x in opening[2]]) opening[3] = tuple([x * scale_factor for x in opening[3]]) for insert in self._inserts: insert.units = value self._units = value