Skip to content

Releases: compas-dev/compas

COMPAS 2.8.0

13 Dec 13:29
Compare
Choose a tag to compare

Added

  • Added implementation of RhinoBrep.fillet() and RhinoBrep.filleted() to compas_rhino.
  • Added Frame.invert and Frame.inverted.
  • Added Frame.flip and Frame.flipped as alias for invert and inverted.
  • Added Vector.flip and Vector.flipped as alias for invert and inverted.

Changed

  • Fixed native_edge property of RhinoBrepEdge.
  • Expose the parameters radius and nmax from compas.topology._face_adjacency to compas.topology.face_adjacency and further propagate them to unify_cycles and Mesh.unify_cycles.
  • Modify face_adjacency to avoid using compas.topology._face_adjacency by default when there are more than 100 faces, unless one of the parameters radius, nmax is passed.
  • Changed unify_cycles to use the first face in the list as root if no root is provided.

Removed

COMPAS 2.7.0

28 Nov 15:46
Compare
Choose a tag to compare

Added

  • Added attribute start_vertex to compas.geometry.BrepTrim.
  • Added attribute end_vertex to compas.geometry.BrepTrim.
  • Added attribute vertices to compas.geometry.BrepTrim.
  • Added attribute start_vertex to compas_rhino.geometry.RhinoBrepTrim.
  • Added attribute start_vertex to compas_rhino.geometry.RhinoBrepTrim.
  • Added attribute vertices to compas_rhino.geometry.RhinoBrepTrim.

Changed

  • Fixed PluginNotInstalledError when using Brep.from_boolean_* in Rhino.
  • Added support for Polyline as input for compas_rhino.Brep.from_extrusion.

Removed

COMPAS 2.6.1

09 Nov 11:40
Compare
Choose a tag to compare

Added

Changed

  • Fixed bug in compas_rhino.scene.RhinoMeshObject.clear().

Removed

COMPAS 2.6.0

08 Nov 15:29
Compare
Choose a tag to compare

Added

  • Added key conversion map to compas.colors.ColorDict to avoid serialisation problems with tuple keys when used in combination with edges.
  • Added Scene.find_all_by_itemtype.

Changed

  • Fixed bug in VolMesh.delete_cell.
  • Fixed NoneType error when calling compas.geometry.Sphere.edges.
  • Fixed bug in VolMesh.vertex_halffaces.
  • Fixed bug in VolMesh.vertex_cells.
  • Fixed bug in VolMesh.is_halfface_on_boundary.

Removed

  • Removed VolMesh.halfface_adjacent_halfface because of general nonsensicalness, and because it is (and probably always has been) completely broken.

COMPAS 2.5.0

25 Oct 15:16
ef3996d
Compare
Choose a tag to compare

Added

  • Added instructions for creating new data types to the dev guide.
  • Added compact=False, minimal=False to compas.data.Data.to_json() to compas.data.Data.to_jsonstring().
  • Added copy_guid=False to compas.data.Data.copy(). If true, the copy has the same guid as the original.
  • Added implementation of Brep.from_loft() to compas_rhino.

Changed

  • Fixed RuntimeError when using compas_rhino.unload_modules in CPython`.
  • Fixed bug in Box.scaled causing a TypeError due to incorrect parameter forwarding.
  • Changed argument names of Box.scale() to x, y, z, instead of factor and made y and z optional to keep positional arguments backwards compatible.
  • Fixed import errors in compas_rhino.conduits for Rhino 8.
  • Fixed doctest failures.
  • Fixed bug in serialization when compas.datastructures.attributes.AttributeView is used.
  • Fixed bug in the serialisation of empty scenes.
  • Fixed bug in serialisation process due to name attribute appearing in json representation after copy even if not present before copy.

Removed

COMPAS 2.4.3

04 Oct 08:33
007077a
Compare
Choose a tag to compare

Added

Changed

  • Fixed support for compas_gpython in Rhino 8 Grasshopper CPython components.
  • Fixed Graph.from_edges always returning None.

Removed

  • Removed deprecated module compas_ghpython.utilities. For drawing functions, use compas_ghpython.drawing directly.

COMPAS 2.4.2

17 Sep 04:17
8dd40a6
Compare
Choose a tag to compare

Added

  • Added compas.scene.Scene.find_by_name to find the first scene object with the given name.
  • Added compas.scene.Scene.find_by_itemtype to find the first scene object with a data item of the given type.

Changed

  • Fixed args for SceneObject on Grasshopper Draw component.
  • Replaced use of Rhino.Geometry.VertexColors.SetColors with a for loop and SetColor in compas_ghpyton since the former requires a System.Array.
  • Fixed Mesh.face_circle.

Removed

COMPAS 2.4.1

24 Aug 23:44
Compare
Choose a tag to compare

Added

Changed

  • Changed supported Blender versions to latest LTS versions (3.3, 3.6, 4.2).
  • Fixed bug in compas_rhino.conversions.cone_to_compas.
  • Fixed bug in compas_rhino.conversions.cylinder_to_compas.
  • Fixed bug in compas_rhino.scene.RhinoMeshObject.draw_vertexnormals (scale not used).
  • Fixed bug in compas_rhino.scene.RhinoMeshObject.draw_facenormals (scale not used).
  • Changed scene object registration to stop printing messages.

Removed

COMPAS 2.4.0

22 Aug 13:25
Compare
Choose a tag to compare

Added

  • Added compas.scene.Scene.redraw.
  • Added compas.scene.Scene.context_objects representing all objects drawn in the visualisation context by the scene.
  • Added compas.scene.Scene.clear_context with optional guids to clear some or all objects from the visualisation context.
  • Added clear_scene and clear_context parameters to compas.scene.Scene.clear to differentiate between removing objects from the scene internally or removing corresponding objects from the viz context, or both (default).
  • Added compas_rhino.conversions.extrusion_to_compas_box as direct conversion of extrusion breps.

Changed

  • Changed the __str__ of compas.geometry.Frame, compas.geometry.Plane, compas.geometry.Polygon, compas.geometry.Polyhedron, compas.geometry.Quaternion to use a limited number of decimals (determined by Tolerance.PRECISION). Note: __repr__ will instead maintain full precision.
  • Changed the __str__ of compas.geometry.Pointcloud to print total number of points instead of the long list of points. Note: __repr__ will still print all the points with full precision.
  • Fixed bug in Pointcloud.from_box().
  • Changed compas.scene.MeshObject to not use vertex coordinate caching because it is too fragile.
  • Changed compas_rhino.scene.RhinoMeshObject to keep track of element-guid pairs in dicts.
  • Changed compas.scene.Scene._guids to a default value of [].
  • Fixed bug due to missing import in compas_rhino.scene.graphobject.
  • Changed compas_rhino.scene.RhinoMeshObject.draw_vertexnormals to use the same selection of vertices as draw_vertices.
  • Changed compas_rhino.scene.RhinoMeshObject.draw_vertexnormals to use the corresponding vertex color if no color is specified.
  • Changed compas_rhino.scene.RhinoMeshObject.draw_facenormals to use the same selection of vertices as draw_faces.
  • Changed compas_rhino.scene.RhinoMeshObject.draw_facenormals to use the corresponding face color if no color is specified.

Removed

COMPAS 2.3.0

06 Jul 11:28
Compare
Choose a tag to compare

Added

  • Added code coverage report uploads to codecov.io.
  • Added compas.geometry.surfaces.surface.Surface.from_native.
  • Added compas.geometry.surfaces.nurbs.NurbsSurface.from_plane.
  • Added compas.geometry.surfaces.nurbs.NurbsSurface.from_cylinder.
  • Added compas.geometry.surfaces.nurbs.NurbsSurface.from_extrusion.
  • Added compas.geometry.surfaces.nurbs.NurbsSurface.from_frame.
  • Added compas.geometry.surfaces.nurbs.NurbsSurface.from_interpolation.
  • Added compas.geometry.surfaces.nurbs.NurbsSurface.from_revolution.
  • Added compas.geometry.surfaces.nurbs.NurbsSurface.from_sphere.
  • Added compas.geometry.surfaces.nurbs.NurbsSurface.from_torus.
  • Added compas_rhino.geometry.surfaces.surface_from_native.
  • Added compas_rhino.geometry.surfaces.nurbssurface_from_native.
  • Added compas_rhino.geometry.surfaces.nurbssurface_from_cylinder.
  • Added compas_rhino.geometry.surfaces.nurbssurface_from_fill.
  • Added compas_rhino.geometry.surfaces.nurbssurface_from_torus.
  • Added compas_rhino.geometry.surfaces.nurbs.NurbsSurface.from_corners.
  • Added compas_rhino.geometry.surfaces.nurbs.NurbsSurface.from_cylinder.
  • Added compas_rhino.geometry.surfaces.nurbs.NurbsSurface.from_frame.
  • Added compas_rhino.geometry.surfaces.nurbs.NurbsSurface.from_sphere.
  • Added compas_rhino.geometry.surfaces.nurbs.NurbsSurface.from_torus.
  • Added compas.geometry.curves.curve.Curve.from_native.
  • Added compas_rhino.geometry.curves.curve.Curve.from_native.
  • Added compas_rhino.geometry.curves.nurbs.NurbsCurve.from_native.
  • Added compas_rhino.conversions.breps.brep_to_compas_mesh.
  • Added compas_rhino.conversions.docobjects.brepobject_to_compas.
  • Added compas_rhino.conversions.docobjects.curveobject_to_compas.
  • Added compas_rhino.conversions.docobjects.meshobject_to_compas.
  • Added compas_rhino.conversions.docobjects.pointobject_to_compas.
  • Added compas.datastructures.HashTree and compas.datastructures.HashNode.

Changed

  • Fixed bug in compas.geometry.curves.curve.Curve.reversed by adding missing parenthesis.
  • Fixed all doctests so we can run invoke test --doctest.
  • Changed compas.geometry.surfaces.surface.Surface.__new__ to prevent instantiation of Surface directly.
  • Changed compas.geometry.surfaces.nurbs.NurbsSurface.__new__ to prevent instantiation of NurbsSurface directly.
  • Fixed bug in compas.geometry.surfaces.nurbs.NurbsSurface.__data__.
  • Changed compas.geometry.surfaces.nurbs.new_nurbssurface_from_... to nurbssurface_from_....
  • Changed compas.geometry.curves.curve.Curve.__new__ to prevent instantiation of Curve directly.
  • Changed compas.geometry.curves.nurbs.new_nurbscurve_from_... to nurbscurve_from_....
  • Changed compas.geometry.curves.nurbs.NurbsCurve.__new__ to prevent instantiation of NurbsCurve directly.
  • Changed compas_rhino.geometry.curves.new_nurbscurve_from_... to nurbscurve_from_....
  • Fixed compas_ghpython Grasshopper components not included in published pakcage.
  • Changed compas.colors.Color.coerce to take color as is, if it is already an instance of compas.colors.Color.
  • Changed compas_rhino.conversions.surfaces.surface_to_compas to work only with surface geometry.
  • Changed compas_rhino.conversions.curves.curve_to_compas_line to work only with geometry.
  • Changed compas_rhino.conversions.curves.curve_to_compas_circle to work only with geometry.
  • Changed compas_rhino.conversions.curves.curve_to_compas_ellipse to work only with geometry.
  • Changed compas_rhino.conversions.curves.curve_to_compas_polyline to work only with geometry.
  • Changed compas_rhino.objects.get_point_coordinates to deprecated (removed in v2.3).
  • Changed compas_rhino.objects.get_line_coordinates to deprecated (removed in v2.3).
  • Changed compas_rhino.objects.get_polyline_coordinates to deprecated (removed in v2.3).
  • Changed compas_rhino.objects.get_polygon_coordinates to deprecated (removed in v2.3).
  • Fixed a bug in worldtransformation of compas.scene.SceneObject to include the object's own frame.

Removed

  • Removed pluggable compas.geometry.surfaces.surface.new_surface.
  • Removed pluggable compas.geometry.surfaces.surface.new_surface_from_plane.
  • Removed compas.geometry.surfaces.surface.Surface.from_plane.
  • Removed compas.geometry.surfaces.surface.ConicalSurface.__new__.
  • Removed compas.geometry.surfaces.surface.CylindricalSurface.__new__.
  • Removed compas.geometry.surfaces.surface.PlanarSurface.__new__.
  • Removed compas.geometry.surfaces.surface.SphericalSurface.__new__.
  • Removed compas.geometry.surfaces.surface.ToroidalSurface.__new__.
  • Removed compas.geometry.surfaces.nurbs.NurbsSurface.__init__.
  • Removed compas_rhino.geometry.surfaces.new_surface.
  • Removed compas_rhino.geometry.surfaces.new_nurbssurface.
  • Removed compas_rhino.geometry.surfaces.nurbs.NurbsSurface.__from_data__.
  • Removed compas_rhino.geometry.surfaces.surface.Surface.from_corners.
  • Removed compas_rhino.geometry.surfaces.surface.Surface.from_cylinder.
  • Removed compas_rhino.geometry.surfaces.surface.Surface.from_frame.
  • Removed compas_rhino.geometry.surfaces.surface.Surface.from_sphere.
  • Removed compas_rhino.geometry.surfaces.surface.Surface.from_torus.
  • Removed compas.geometry.curves.arc.Arc.__new__.
  • Removed compas.geometry.curves.bezier.Bezier.__new__.
  • Removed compas.geometry.curves.conic.Conic.__new__.
  • Removed compas.geometry.curves.polyline.Polyline.__new__.
  • Removed compas.geometry.curves.curve.new_curve.
  • Removed compas.geometry.curves.curve.new_nurbscurve.
  • Removed compas_rhino.geometry.curves.new_curve.
  • Removed compas_rhino.geometry.curves.new_nurbscurve.
  • Removed compas_rhino.conversions.surfaces.data_to_rhino_surface.
  • Removed compas_rhino.conversions.surfaces.surface_to_compas_data.
  • Removed compas_rhino.conversions.surfaces.surface_to_compas_quadmesh.
  • Removed compas_rhino.conversions.curves.curve_to_compas_data.