Releases: compas-dev/compas
Releases · compas-dev/compas
COMPAS 2.0.0-alpha.1
Added
- Added
create_id
tocompas_ghpython.utilities
. (moved fromcompas_fab
) - Added representation for features in
compas.datastructures.Part
. - Added
split
andsplit_by_length
tocompas.geometry.Polyline
. - Added
compas.rpc.XFunc
. - Added attribute
compas.color.Color.DATASCHEMA
. - Added attribute
compas.data.Data.DATASCHEMA
. - Added attribute
compas.datastructures.Graph.DATASCHEMA
. - Added attribute
compas.datastructures.Halfedge.DATASCHEMA
. - Added attribute
compas.datastructures.Halfface.DATASCHEMA
. - Added attribute
compas.geometry.Arc.DATASCHEMA
. - Added attribute
compas.geometry.Bezier.DATASCHEMA
. - Added attribute
compas.geometry.Box.DATASCHEMA
. - Added attribute
compas.geometry.Capsule.DATASCHEMA
. - Added attribute
compas.geometry.Circle.DATASCHEMA
. - Added attribute
compas.geometry.Cone.DATASCHEMA
. - Added attribute
compas.geometry.Cylinder.DATASCHEMA
. - Added attribute
compas.geometry.Ellipse.DATASCHEMA
. - Added attribute
compas.geometry.Frame.DATASCHEMA
. - Added attribute
compas.geometry.Line.DATASCHEMA
. - Added attribute
compas.geometry.NurbsCurve.DATASCHEMA
. - Added attribute
compas.geometry.NurbsSurface.DATASCHEMA
. - Added attribute
compas.geometry.Plane.DATASCHEMA
. - Added attribute
compas.geometry.Point.DATASCHEMA
. - Added attribute
compas.geometry.Pointcloud.DATASCHEMA
. - Added attribute
compas.geometry.Polygon.DATASCHEMA
. - Added attribute
compas.geometry.Polyhedron.DATASCHEMA
. - Added attribute
compas.geometry.Polyline.DATASCHEMA
. - Added attribute
compas.geometry.Sphere.DATASCHEMA
. - Added attribute
compas.geometry.Torus.DATASCHEMA
. - Added attribute
compas.geometry.Quaternion.DATASCHEMA
. - Added attribute
compas.geometry.Vector.DATASCHEMA
. - Added implementation of property
compas.color.Color.data
. - Added
compas.data.Data.validate_data
. - Added
compas.data.Data.__jsondump__
. - Added
compas.data.Data.__jsonload__
. - Added
compas.data.schema.dataclass_dataschema
. - Added
compas.data.schema.dataclass_typeschema
. - Added
compas.data.schema.dataclass_jsonschema
. - Added
compas.data.schema.compas_jsonschema
. - Added
compas.data.schema.compas_dataclasses
. - Added
compas.datastructures.Graph.to_jsondata
. - Added
compas.datastructures.Graph.from_jsondata
. - Added
compas.datastructures.Halfedge.halfedge_loop_vertices
. - Added
compas.datastructures.Halfedge.halfedge_strip_faces
. - Added
compas.datastructures.Mesh.vertex_point
. - Added
compas.datastructures.Mesh.vertices_points
. - Added
compas.datastructures.Mesh.set_vertex_point
. - Added
compas.datastructures.Mesh.edge_start
. - Added
compas.datastructures.Mesh.edge_end
. - Added
compas.datastructures.Mesh.edge_line
. - Added
compas.datastructures.Mesh.face_points
. - Added
compas.datastructures.Mesh.face_polygon
. - Added
compas.datastructures.Mesh.face_circle
. - Added
compas.datastructures.Mesh.face_frame
. - Added
compas.datastructures.Graph.node_index
andcompas.datastructures.Graph.index_node
. - Added
compas.datastructures.Graph.edge_index
andcompas.datastructures.Graph.index_edge
. - Added
compas.datastructures.Halfedge.vertex_index
andcompas.datastructures.Halfedge.index_vertex
. - Added
compas.geometry.Hyperbola
. - Added
compas.geometry.Parabola
. - Added
compas.geometry.PlanarSurface
. - Added
compas.geometry.CylindricalSurface
. - Added
compas.geometry.SphericalSurface
. - Added
compas.geometry.ConicalSurface
. - Added
compas.geometry.ToroidalSurface
. - Added
compas.geometry.trimesh_descent_numpy
. - Added
compas.geometry.trimesh_gradient_numpy
. - Added
compas.geometry.boolean_union_polygon_polygon
pluggable. - Added
compas.geometry.boolean_intersection_polygon_polygon
pluggable. - Added
compas.geometry.boolean_difference_polygon_polygon
pluggable. - Added
compas.geometry.boolean_symmetric_difference_polygon_polygon
pluggable. - Added
compas.geometry.boolean_union_polygon_polygon
Shapely-based plugin. - Added
compas.geometry.boolean_intersection_polygon_polygon
Shapely-based plugin. - Added
compas.geometry.boolean_difference_polygon_polygon
Shapely-based plugin. - Added
compas.geometry.boolean_symmetric_difference_polygon_polygon
Shapely-based plugin. - Added
compas.geometry.Pointcloud.from_ply
. - Added
compas.geometry.Curve.to_points
. - Added
compas.geometry.Curve.to_polyline
. - Added
compas.geometry.Curve.to_polygon
. - Added
compas.geometry.Surface.to_vertices_and_faces
. - Added
compas.geometry.Surface.to_triangles
. - Added
compas.geometry.Surface.to_quads
. - Added
compas.geometry.Surface.to_mesh
. - Added
compas.geometry.Curve.point_at
. - Added
compas.geometry.Curve.tangent_at
. - Added
compas.geometry.Curve.normal_at
. - Added
compas.geometry.Surface.point_at
. - Added
compas.geometry.Surface.normal_at
. - Added
compas.geometry.Surface.frame_at
. - Added
mesh_to_rhino
tocompas_rhino.conversions
. - Added
vertices_and_faces_to_rhino
tocompas_rhino.conversions
. - Added
polyhedron_to_rhino
tocompas_rhino.conversions
. - Added
from_mesh
plugin tocompas_rhino.geometry.RhinoBrep
. - Added
compas.geometry.Plane.worldYZ
andcompas.geometry.Plane.worldZX
. - Added
compas.datastructures.CellNetwork
. - Added
compas_rhino.conversions.brep_to_compas_box
. - Added
compas_rhino.conversions.brep_to_compas_cone
. - Added
compas_rhino.conversions.brep_to_compas_cylinder
. - Added
compas_rhino.conversions.brep_to_compas_sphere
. - Added
compas_rhino.conversions.brep_to_rhino
. - Added
compas_rhino.conversions.capsule_to_rhino_brep
. - Added
compas_rhino.conversions.cone_to_rhino_brep
. - Added
compas_rhino.conversions.curve_to_rhino
. - Added
compas_rhino.conversions.cylinder_to_rhino_brep
. - Added
compas_rhino.conversions.extrusion_to_compas_box
. - Added
compas_rhino.conversions.extrusion_to_rhino_cylinder
. - Added
compas_rhino.conversions.extrusion_to_rhino_torus
. - Added
compas_rhino.conversions.polyline_to_rhino_curve
. - Added
compas_rhino.conversions.surface_to_compas
. - Added
compas_rhino.conversions.surface_to_compas_mesh
. - Added
compas_rhino.conversions.surface_to_compas_quadmesh
. - Added
compas_rhino.conversions.surface_to_rhino
. - Added
compas_rhino.conversions.torus_to_rhino_brep
. - Added
compas_rhino.artists._helpers.attributes
. - Added
compas_rhino.artists._helpers.ngon
. - Added
compas.geometry.find_span
. - Added
compas.geometry.construct_knotvector
. - Added
compas.geometry.knotvector_to_knots_and_mults
. - Added
compas.geometry.knots_and_mults_to_knotvector
. - Added
compas.geometry.compute_basisfuncs
. - Added
compas.geometry.compute_basisfuncsderivs
. - Added
compas.geometry.DefaultNurbsCurve
as try-last, Python-only plugin forcompas.geometry.NurbsCurve
. - Added
compas.geometry.DefaultNurbsSurface
as try-last, Python-only plugin forcompas.geometry.NurbsSurface
. - Added color count to constructor functions of
compas.colors.ColorMap
.
Changed
- Temporarily skip testing for python 3.7 due to a bug related to MacOS 13.
- Fixed bug that caused a new-line at the end of the
compas.HERE
constant in IronPython for Mac. - Fixed unbound method usage of
.cross()
onPlane
,Vector
andFrame
. - Fixed Grasshopper
draw_polylines
method to returnPolylineCurve
instead ofPolyline
because the latter shows as only points. - Fixed bug in the
is_polygon_in_polygon_xy
that was not correctly generating all the edges of the second polygon before checking for intersections. - Fixed
area_polygon
that was, in some cases, returning a negative area. - Fixed uninstall post-process.
- Fixed support for
System.Decimal
data type on json serialization. - Fixed
offset_polygon
raising a TypeError when inputing a Polygon instead of a list of Points. - Simplified
compas.datastructures.Part
for more generic usage. - Changed
GLTFMesh.from_mesh
to read texture coordinates, vertex normals and colors if available and add toGLTFMesh
- Fixed bug in
VolMeshArtist.draw_cells
for Rhino, Blender and Grasshopper. - Changed edge parameter of
compas.datastructures.Halfedge.edge_faces
to 1 edge identifier (tuple of vertices) instead of two serparate vertex identifiers. - Changed edge parameter of
compas.datastructures.Halfedge.halfedge_face
to 1 edge identifier (tuple of vertices) instead of two serparate vertex identifiers. - Changed edge parameter of
compas.datastructures.Halfedge.is_edge_on_boundary
to 1 edge identifier (tuple of vertices) instead of two serparate vertex identifiers. - Changed edge parameter of
compas.datastructures.Halfedge.halfedge_after
to 1 edge identifier (tuple of vertices) instead of two serparate vertex identifiers. - Changed edge parameter of
compas.datastructures.Halfedge.halfedge_before
to 1 edge identifier (tuple of vertices) instead of two serparate vertex identifiers. - Changed edge parameter of
compas.datastructures.trimesh_edge_cotangent
to 1 edge identifier (tuple of vertices) instead of two serparate vertex identifiers. - Changed edge parameter of
compas.datastructures.trimesh_edge_cotangents
to 1 edge identifier (tuple of vertices) instead of two serparate vertex identifiers. - Changed edge parameter of
compas.datastructures.Mesh.edge_coordinates
to 1 edge identifier (tuple of vertices) instead of two serparate vertex identifiers. - Changed edge parameter of
compas.datastructures.Mesh.edge_length
to 1 edge identifier (tuple of vertices) instead of two serparate vertex identifiers. - Changed edge parameter of
compas.datastructures.Mesh.edge_vector
to 1 edge identifier (tuple of vertices) instead of two serparate vertex identifiers. - Changed edge parameter of
compas.datastructures.Mesh.edge_point
to 1 edge identifier (tuple of vertices) instead of two serparate vertex identifiers. - Changed edg...
COMPAS 1.17.6
Added
- Added
create_id
tocompas_ghpython.utilities
. (moved fromcompas_fab
)
Changed
- Fixed bug that caused a new-line at the end of the
compas.HERE
constant in IronPython for Mac. - Fixed Grasshopper
draw_polylines
method to returnPolylineCurve
instead ofPolyline
because the latter shows as only points. - Fixed uninstall post-process.
- Fixed
area_polygon
that was, in some cases, returning a negative area - Fixed support for
System.Decimal
data type on json serialization. - Fixed
AttributeError
in Plotter'sPolylineArtist
andSegementArtist
. - Fixed wrong key type when de-serializing
Graph
with integer keys leading to node not found. - Fixed bug in
VolMeshArtist.draw_cells
for Rhino, Blender and Grasshopper. - Fixed bug in the
is_polygon_in_polygon_xy
that was not correctly generating all the edges of the second polygon before checking for intersections.
Removed
COMPAS 1.17.5
Added
- Added conversion function
frame_to_rhino_plane
tocompas_rhino.conversions
. - Added
RhinoSurface.from_frame
tocompas_rhino.geometry
. - Added representation for trims with
compas.geometry.BrepTrim
. - Added
Arc
tocompas.geometry
. - Added
Arc
conversion functions tocompas_rhino.conversions
. - Added
from_sphere
alternative constructor toRhinoBrep
. - Added support for singular trims to
RhinoBrep
.
Changed
- Patched CVE-2007-4559 vulnerability.
- Updated workflows to v2.
- Fixed attribute error in
compas_rhino.conversions.ellipse_to_compas
. - Changed deepcopy of
RhinoBrep
to use the nativeRhino.Geometry
mechanism. - The normal of the cutting plane is no longer flipped in
compas_rhino.geometry.RhinoBrep
. - Planar holes caused by
RhinoBrep.trim
are now automatically capped. - Fixed
Polygon
constructor to not modify the input list of points. - Fixed serialization of sphere and cylinder Breps in
RhinoBrep
. - Fixed serialization of some trimmed shapes in
RhinoBrep
. - Freeze black version to 22.12.0.
- Fixed
is_point_in_circle_xy
second argument to access the origin of the plane of the circle.
Removed
COMPAS 1.17.4
Added
- Added option for per-vertex color specification to
compas_rhino.utilities.drawing.draw_mesh
.
Changed
- Fixed strange point values in RhinoNurbsCurve caused by conversion
ControlPoint
to COMPAS instead ofControlPoint.Location
. - Fixed flipped order of NURBS point count values when creating RhinoNurbsSurface from parameters.
Removed
- Removed Python 3.6 from build workflows as it reached end-of-life at the end of 2021.
COMPAS 1.17.3
Added
- Added
compas_rhino.INSTALLATION_ARGUMENTS
.
Changed
- Fixed bug in Rhino installation due to redefinition of command line arguments in
compas_ghpython.components.get_version_from_args
.
Removed
COMPAS 1.17.2
Added
Changed
- Changed
compas._os._polyfill_symlinks
to use junction (/J) instead of symbolic link (/D).
Removed
COMPAS 1.17.1
Added
- Added
compas_rhino.geometry.RhinoCurve.offset
. - Added
compas.geometry.Surface.from_plane
. - Added
compas.geometry.surfaces.surface.new_surface_from_plane
pluggable. - Added
compas_rhino.geometry.surfaces.new_surface_from_plane
plugin. - Added
compas_rhino.geometry.RhinoSurface.intersections_with_curve
.
Changed
- Fixed bug in
compas_rhino.geometry.RhinoCurve.frame_at
. - Changed implementation of
compas.datastructures.mesh_planarize_faces
to include edge midpoints.
Removed
COMPAS 1.17.0
Added
- Added gltf extensions:
KHR_materials_transmission
,KHR_materials_specular
,KHR_materials_ior
,KHR_materials_clearcoat
,KHR_Texture_Transform
,KHR_materials_pbrSpecularGlossiness
- Added
GLTFContent.check_extensions_texture_recursively
- Added
GLTFContent.get_node_by_name
,GLTFContent.get_material_index_by_name
- Added
GLTFContent.add_material
,GLTFContent.add_texture
,GLTFContent.add_image
- Added pluggable
Brep
support withcompas.geometry.brep
. - Added Rhino
Brep
plugin incompas_rhino.geometry.brep
. - Added boolean operations to the
compas_rhino
Brep
backend. - Added boolean operation operator overloads in
compas.geometry.Brep
- Added
format
task usingblack
formatter. - Added a
test_intersection_circle_circle_xy
in thetest_intersections
- Added split operation to
compas_rhino.geometry.Brep
. - Added a
RhinoArtist
incompas_rhino
. - Added a
RhinoArtist
incompas_ghpython
.
Changed
- Based all gltf data classes on
BaseGLTFDataClass
- Fixed
Color.__get___
AttributeError. - Fixed
RhinoSurface.curvature_at
not returning a Vector, but a Rhino SurfaceCurvature class object - Fixed
cylinder_to_rhino
conversion to matchcompas.geometry.Cylinder
location. - Changed identification of cylinder brep face to non-zero in
compas_rhino.conversions.cylinder.Cylinder
. - Changed linter to
black
. - Automatically trigger
invoke format
duringinvoke release
. - Fixed bug in
intersections.intersection_circle_circle_xy
where the Circle's Plane was accessed instead of the centre. - Fixed bug in
_core.tangent
where the Circle's Plane was accessed instead of the centre. - Fixed the
test_tangent
to work with a properly defined circle RhinoBrep
serialization works now with surface types other than NURBS.- Fixed bug in finding halfedge before a given halfedge if that halfedge is on the boundary (
Mesh.halfedge_before
). - Renamed
Brep.from_brep
toBrep.from_native
.
Removed
COMPAS 1.16.0
v1.16.0 Bump version: 1.15.1 → 1.16.0
COMPAS 1.15.1
Added
- Added optional
triangulated
flag toMesh.to_vertices_and_faces
. - Added geometry information of active meshes to the serialization/deserialization of robot model's
MeshDescriptor
. - Added Grasshopper component to draw any COMPAS object.
- Added new icons to Grasshopper components and default to icon style.
Changed
- Fixed bug in Blender mesh conversion.
- Changed Rhino plugin installer to check for and install required plugin packages.
- Refactor robot model artists to use the same
Mesh.to_vertices_and_faces
everywhere. - Fix debug print on Blender artist.