Grasshopper Plugin ****************** Rhinoceros (typically abbreviated Rhino or Rhino3D, https://www.rhino3d.com/) is a commercial 3D computer graphics and computer-aided design (CAD) application software developed by Robert McNeel & Associates. Rhinoceros is used for computer-aided design (CAD), computer-aided manufacturing (CAM), rapid prototyping, 3D printing and reverse engineering in industries including architecture, industrial design (e.g. automotive design, watercraft design), product design (e.g. jewelry design) as well as for multimedia and graphic design. The Bleem Cube plugin is freely available for accessing the Bleem Cube API. The plugin is coded by Python script. ============================= Package and Installation ============================= Installation is easy. Just copy the entire folder "BleemCube" into the user object folder which can be accessed below through Grasshooper main GUI, as shown below. This plugin requires curl tool. If user is on Windows 10 build 17063 or later, the curl command is included by default. For the early build, user has to install the curl prior to use the plugin. .. image:: ./Images/UserObjectFolder.png :width: 615px :height: 503px :scale: 75% The lattice in general can be created through voxellization process. The package "Crystallon" by aporterfield is highly recommended for lattice creation and geometric design operations. It is a free tool set that can be downloaded in food4rhino app market. The typical basic working procedure is using BleemCube to calculate the key lattice design, and feed those numbers into the Crystallon for creation of final geometry. **BleemCube** .. image:: ./Images/Bleemsys_logo.jpg :width: 400px :height: 400px :scale: 25% Download: https://www.food4rhino.com/en/app/bleemcube Forum: http://www.grasshopper3d.com/group/bleemcube **Crystallon** .. image:: ./Images/crystallon_logo_1500x1500.png :width: 400px :height: 400px :scale: 25% Download: http://www.food4rhino.com/app/crystallon Forum: http://www.grasshopper3d.com/group/crystallon Source: https://github.com/fequalsf/Crystallon ========== API access ========== All APIs has been packed in the collection of user objects which is a total of 13 items. User are required the token before accessing the APIs. The overview of the tool set is showed below. .. image:: ./Images/GPH_toolset.png :width: 264px :height: 87px :scale: 100% The usage of these items are exactly same as those defined in the previous sections. User can always refer back to the APIs for checking the meaning of the items. The Grasshopper plugin indeed was simply coded using python. They were interpreted by the Grasshopper's internal python interpreter. User may open the internal python editor to check how these objects calls the API. Table below gives a general view on the tool items. .. |Endpoint_icon| image:: ./Images/GPH_icons/EndPoint.png :width: 24px :height: 24px :scale: 100% .. |Lattice_icon| image:: ./Images/GPH_icons/Lattice.png :width: 24px :height: 24px :scale: 100% .. |Profile_icon| image:: ./Images/GPH_icons/Profile.png :width: 24px :height: 24px :scale: 100% .. |Unitsize_icon| image:: ./Images/GPH_icons/Unitsize.png :width: 24px :height: 24px :scale: 100% .. |material_icon| image:: ./Images/GPH_icons/material.png :width: 24px :height: 24px :scale: 100% .. |Thickness_icon| image:: ./Images/GPH_icons/Thickness.png :width: 24px :height: 24px :scale: 100% .. |Endpoint_pic| image:: ./Images/GPH_endpoint.png :width: 307px :height: 85px :scale: 60% .. |Lattice_pic| image:: ./Images/GPH_Lattice.png :width: 343px :height: 73px :scale: 60% .. |Profile_pic| image:: ./Images/GPH_Profile.png :width: 288px :height: 94px :scale: 60% .. |unitsize_pic| image:: ./Images/GPH_unitsize.png :width: 417px :height: 98px :scale: 60% .. |material_pic| image:: ./Images/GPH_material.png :width: 356px :height: 96px :scale: 60% .. |thickness_pic| image:: ./Images/GPH_thickness.png :width: 609px :height: 91px :scale: 40% +------------------+-----------------------------+----------------------------------------------------+ + Icon + Item + Note + +------------------+-----------------------------+----------------------------------------------------+ + |Endpoint_icon| + |Endpoint_pic| + Selection of the endpoint for accessing the API + +------------------+-----------------------------+----------------------------------------------------+ + |Lattice_icon| + |Lattice_pic| + Selection of the Lattice for calculation + +------------------+-----------------------------+----------------------------------------------------+ + |Profile_icon| + |Profile_pic| + Selection of the cross-section profile shape + +------------------+-----------------------------+----------------------------------------------------+ + |unitsize_icon| + |unitsize_pic| + Slider of defining the x,y and z size of a cell + +------------------+-----------------------------+----------------------------------------------------+ + |material_icon| + |material_pic| + Selection of the base material + +------------------+-----------------------------+----------------------------------------------------+ + |thickness_icon| + |thickness_pic| + Slider of defining the thickness of beam profile + +------------------+-----------------------------+----------------------------------------------------+ The set of "03 - Calculation" collects the calculation APIs. They are summarized below. Please note that, the input parameters have exactly same meaning as defined in the sections of "Cube - Forward Calculation" and "Cube - Inverse Calculation". .. |Elasticity_icon| image:: ./Images/GPH_icons/Elastic.png :width: 24px :height: 24px :scale: 100% .. |Elasticity_pic| image:: ./Images/GPH_Elasticity.png :width: 246px :height: 330px :scale: 70% .. |MaxE_icon| image:: ./Images/GPH_icons/Maximum.png :width: 24px :height: 24px :scale: 100% .. |MaxE_pic| image:: ./Images/GPH_MaxE.png :width: 244px :height: 484px :scale: 70% .. |MinE_icon| image:: ./Images/GPH_icons/Minimum.png :width: 24px :height: 24px :scale: 100% .. |MinE_pic| image:: ./Images/GPH_MinE.png :width: 244px :height: 484px :scale: 70% .. |TarE_icon| image:: ./Images/GPH_icons/invE.png :width: 24px :height: 24px :scale: 100% .. |TarE_pic| image:: ./Images/TargetE.png :width: 250px :height: 249px :scale: 70% .. |TarEC_icon| image:: ./Images/GPH_icons/invE_BC.png :width: 24px :height: 24px :scale: 100% .. |TarEC_pic| image:: ./Images/TargetECon.png :width: 250px :height: 485px :scale: 70% .. |Str_icon| image:: ./Images/GPH_icons/stressstrain.png :width: 24px :height: 24px :scale: 100% .. |Str_pic| image:: ./Images/GPH_StrStrain.png :width: 248px :height: 329px :scale: 70% .. |Mat_icon| image:: ./Images/GPH_icons/matData.png :width: 24px :height: 24px :scale: 100% .. |Mat_pic| image:: ./Images/GPH_MatData.png :width: 359px :height: 348px :scale: 60% +------------------+-----------------------------+--------------------------------------------------------------------+ + Icon + Item + Note + +------------------+-----------------------------+--------------------------------------------------------------------+ + |Elasticity_icon|+ |Elasticity_pic| + Calculate the elastic modulus, i.e. ``"cmd": "E"`` + +------------------+-----------------------------+--------------------------------------------------------------------+ + |MaxE_icon| + |MaxE_pic| + Search the max E, i.e. ``"cmd": "maxE_BC"`` + +------------------+-----------------------------+--------------------------------------------------------------------+ + |MinE_icon| + |MinE_pic| + Search the min E, i.e. ``"cmd": "minE_BC"`` + +------------------+-----------------------------+--------------------------------------------------------------------+ + |TarE_icon| + |TarE_pic| + Search the target E globally, i.e. ``"cmd": "invE"`` + +------------------+-----------------------------+--------------------------------------------------------------------+ + |TarEC_icon| + |TarEC_pic| + Search the target E, i.e. ``"cmd": "invE_BC"`` + +------------------+-----------------------------+--------------------------------------------------------------------+ + |Str_icon| + |Str_pic| + Calculate stress-strain curve, i.e. ``"cmd": "StressStrainCurve"`` + +------------------+-----------------------------+--------------------------------------------------------------------+ + |Mat_icon| + |Mat_pic| + Request material data, i.e. ``"cmd": "MatCurve"`` + +------------------+-----------------------------+--------------------------------------------------------------------+ There is a case study file in the example folder. The case demonstrates the basic operations with Crystallon to create the lattice cube. ========== Copying ========== Grasshopper BleemCube plugin is distributed under the GNU General Public License, v2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.