Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
0.8.0
Added
Added PolylineConstraint component to grasshopper plugin.
Implemented constraints.PolylineConstraint.
Added EdgeDirectionConstraint component to grasshopper plugin.
Implemented constraints.EdgeDirectionConstraint.
Added Diagram.edge_plane to query the projection plane of an edge.
Changed
Fixed
Deprecated
Removed
0.7.0
Added
Added sequence coloring for nodes to plotters.TopologyArtist.
Automatically compute edge widths from a two-tuple with plotters.FormArtist.
Automatically compute edge widths from a two-tuple with viewers.DiagramObject.
Created MoveOriginNodes GH component.
Implemented ShiftTrails GH component.
Implemented Topology.number_of_sequences()
Enabled static_equilibrium calculations up to a kmax sequence.
Implemented Topology.trails_sequences mapping.
Implemented Topology.trail_sequence mapping.
Implemented Topology.shift_trail to change the starting sequence of a trail.
Implemented Topology.from_dualquadmesh.
Created colors for direct and indirect deviation edges.
An origin node can be parametrized by more than one optimization parameter (position and applied load).
An edge can be assigned more than one constraint for optimization.
A node can be assigned more than one constraint for optimization.
Enabled NodeLoad x, y, z components to be used as an optimization parameter.
Changed
Plot reaction forces and applied loads as arrow meshes in viewers.DiagramObject instead of lines.
Topology.auxiliary_trails() takes keys as parameter to iterate over origin node keys and trails.
Topology.trails() takes keys as parameter to iterate over origin node keys and trails.
Topology.sequence() takes keys as parameter to iterate over origin node keys and trails.
Topology.sequences() outputs tuples with the nodes in every sequence instead of a range to klast.
Set explicit use of compas_cem.ghpython artist in FormArtist.
Set explicit use of compas_cem.ghpython artists in TopologyArtist.
Fixed
Prevent NaN in next position calculation in equilibrium_state_numpy.
Deprecated
Removed
0.6.1
Added
Changed
Fixed
Fixed mising kappa argument in optimization.solve_proxy
Deprecated
Removed
0.6.0
Added
ConstrainedFormFinding GH component outputs optimized TopologyDiagram.
compas_cem.plotters.TopologyArtist has node size and edge width default parameters.
compas_cem.plotters.FormArtist has node size and edge width default parameters.
Added support for gradient computation via finite differences.
Added support for the VAR optimization algorithm from NLOpt.
Added gradient convergence treshold kappa to the signature of Optimizer.solve.
Added kappa as input to the ConstrainedFormFinding GH component.
Implemented Diagram.is_edge_supported
Changed
Changed GH components folder prefix from CEM to CompasCem.
Renamed compas_cem.optimization.Optimizer.solve_nlopt to solve.
Refactored compas_cem.optimization.Parameter.
Refactored calculation of trail edge length via plane intersection in static_equilibrium.
Refactored calculation of trail edge length via plane intersection in static_equilibrium_numpy.
Fixed
Fixed bug in compas_cem.equilibrium.equilibrium_state where residual calculation was undefined when tmax=1.
Deprecated
Deprecated Optimizer.solve_nlopt and .solve_nlopt_proxy.
Removed
0.5.0
Added
Implemented compas_cem.plotters.Plotter.
Implemented compas_cem.viewers.Viewer.
Implemented compas_cem.viewers.DiagramObject.
Implemented compas_cem.viewers.TopologyDiagramObject.
Implemented compas_cem.viewers.FormDiagramObject.
Created compas_cem.viewers.
Changed
Fixed
Deprecated
Removed
0.4.1
Added
Implemented ProxyServer GH component to accelerate optimization time in Rhino.
Added compas_cem.diagrams.Diagram.__str__().
Changed
Changed ConstrainedFormFinding GH component to check for existing ProxyServer.
Changed nlopt_status flags for better interpretability in ghpython.
Fixed
Fixed bug in compas_cem.ghpython.artists registration.
Fixed bug in serialization and target computation in optimization.constraints.VectorConstraint.
Fixed bug in Plane creation caused by old version of compas_rhino.RhinoPlane.from_geometry.
Deprecated
Removed
Removed compas_cem.loads.NodeLoad.from_rhino_point_and_vector
Removed compas_cem.supports.NodeSupport.from_rhino_point
Removed compas_cem.elements.Edge.from_rhino_line
Removed compas_cem.elements.Node.from_rhino_point
Removed compas_cem.data.GHData.
0.4.0
Added
Added spiral staircase ghpython example.
Added Jenssen tensegrity ghpython example.
Added tube bridge 3d ghpython example.
Added bridge 2d ghpython example.
Added dome ghpython example.
Implemented TopologyDiagram.is_node_support().
Renamed node and edge key search GH components.
Implemented compas_cem.data.Data.
Implemented compas_cem.plotters.TopologyArtist.
Implemented compas_cem.plotters.FormArtist.
Implemented compas_cem.optimization.Parameter.
Added artists registration for plotters and grasshopper via compas.plugins.plugin.
Changed
Changed reaction force global color from dark blue to dark gray.
Changed data serialization mechanism to comply with compas.data.Data.
Fixed
Fixed bug in auxiliary trails coloring in compas_cem.plotters.
Deprecated
Deprecated TopologyPlotter.
Deprecated FormPlotter.
Removed
Removed compas_cem.optimization.serialization.Serializable.
Removed compas_cem.ghpython.components.Node component.
0.2.2
Added
Changed
Fixed
Pinned COMPAS dependency to version 1.8.1 due to NetworkPlotter deprecation.
Deprecated
Removed
0.2.1
Added
Changed
Changed reaction forces display color from dark green to dark gray.
Changed loads display color from light green to dark green.
Fixed
Trail-building was ignored assembling deviation-only topology diagrams in ghplugin.
Fixed bug: Wrapped EdgeSearch tuple output in a list in ghplugin.
Deprecated
Removed
Removed support for gradient-free NLopt optimization algorithms.
Dropped “LD” subscript to identify NLopt optimization algorithms.
0.1.15
Added
Added check to skip adding None objects to AssembleTopologyDiagram in ghplugin.
Changed
Fixed
Deprecated
Removed
0.1.14
Added
Added draw_arrows argument to TopologyPlotter._draw_loads()
Implemented TopologyPlotter._draw_load_arrows() to display loads as arrows.
Added import/export diagram from JSON to ghplugin.
Implemented TopologyArtist.draw_trails().
TopologyArtistComponent in ghplugin can draw trails.
Added TopologyDiagram.number_of_trail_edges() and TopologyDiagram.number_of_deviation_edges().
Implemented __repr__() method in diagrams, elements, supports, loads, parameters, constraints and optimizer.
Changed
Renamed edge to edge_key and node to node_key in ghplugin components.
Changed display color of loads from green to light green.
Replaced NodeResults wit SupportNodeResults component in ghplugin.
Fixed
Deprecated
Removed
Removed build_trails component from gh plugin. Merged with AssembleTopologyDiagram.
Removed user access to specify auxiliary trails directions and lengths in ghplugin.
Removed nodes from input to TopologyDiagram in ghplugin.
0.1.13
Added
Added Optimizer.gradient and Optimizer.gradient_norm as attributes.
Changed
Exposed eta and tmax in the signature of Optimizer.solve_nlopt() instead of hard-coded values.
Updated ghcomponent ConstrainedFormFinding to include eta and tmax as extra inputs.
Fixed
Converted Frame returned by RhinoPlane.to_compas() to Plane for compatibility of PlaneConstraint() in ghplugin.
Renamed input of ghcomponent FormFinding from eps_min to eta.
Fixed bug in trail force sign calculation in equilibrium_state and in equilibrium_state_numpy.
Deprecated
Removed
0.1.12
Added
Added node coloring for free and support nodes in FormPlotter().
Added TopologyPlotter.draw_segments()
Added color scheme for auxiliary_trail_edges when using TopologyPlotter.draw_edges()
Changed
Fixed
Set tight=False when axes.autoscale is called by Plotter.save(). Overcropped saved image
Deprecated
Removed
Deleted custom edge and node keys in form_plotter_proxy and in topology_plotter_proxy
Removed frame polygon from form_plotter_proxy and in topology_plotter_proxy
0.1.11
Added
Changed
Fixed
Fixed bug in static_equilibrium and static_equilibrium_numpy when calculating support forces
Fixed bug in TopologyArtist gh component: took in list of nodes instead of list of edges
Temporary patch in length calculation in DeviationEdgeLengthConstraint that raised error with autograd.
Deprecated
Removed
0.1.9
Added
Added automatical creation of auxiliary trails.
Added auxiliary_trails=False to the signature of TopologyDiagram.build_trails().
Added TopologyDiagram.auxiliary_trails() iterator.
Added TopologyDiagram.auxiliary_trail_edges() iterator.
Added TopologyDiagram.is_auxiliary_trail_edge() edge filter.
Added TopologyDiagram.number_of_auxiliary_trails().
Added property TopologyDiagram.auxiliary_trail_length with setter.
Added property TopologyDiagram.auxiliary_trail_vector with setter.
Created first full version of GH plugin under compas_cem.ghpython.components
Changed
Changed TopologyDiagram.trails() to return an iterable of trails instead of a dictionary.
Changed TopologyDiagram.build_trails() to not return anything.
The type of a trail is tuple, no longer list to reflect they are immutable.
Splitted Constraint() into children classes VectorConstraint() and FloatConstraint().
Renamed error to penalty in compas_cem.optimization.
Refactores examples folder.
Fixed
Changed check for None in NodeMixins.node_xyz().
Deprecated
Removed
Removed None from default arguments in optimization constraints and parameters.
0.1.6
Added
Implemented TopologyArtist and FormArtist
Added compas_cem.rhino_install to streamline the symlink with Rhino
Added src/compas_cem/ghpython/components/ghuser/ to .gitignore
Changed
Refactored compas_cem.rhino_install into compas_cem.ghpython.install
Refactored compas_cem.rhino_install into compas_cem.ghpython.uninstall
Fixed
Deprecated
Removed
Removed compas_cem.rhino_install
0.1.4
Added
Changed
Fixed
Deprecated
Removed
Deleted tag regex from .bumpversion.cfg
0.1.3
Added
Added automatic tag versioning to CHANGELOG.md
Changed
Renamed CHANGELOG.md to CHANGELOG.rst
Fixed
Deprecated
Removed