Sastrugi Package - Updated

New Package Available.

Introducing…

Logo Capture

Sastrugi should now be live in the Package Manager.

Examples of use and more information can be found on the Package Website here:
https://sites.google.com/view/sastrugi

This package contains 20 Nodes.

:snowflake:_Audit DYN File
:snowflake:_Convert Dynamo XYZ to Revit Coordinate XYZ
:snowflake:_Copy Filter Overrides to Views
:snowflake:_Count and Repeat
:snowflake:_Delete DYN and DYF Backup Files
:snowflake:_Find Elements with Overridden Graphics
:snowflake:_Find Floating Elements
:snowflake:_Fit Points by Coordinate Systems
:snowflake:_Get Dimension Overrides
:snowflake:_Intersecting Planes of Curves
:snowflake:_Map to the Rainbow
:snowflake:_Pick Points on Workplane
:snowflake:_Random Point Cube
:snowflake:_Remake Polycurve
:snowflake:_Set Sketchplane By Face
:snowflake:_Shortest Path By Curve
:snowflake:_Sort Points as Perimeter
:snowflake:_Sort Points by Average Vector
:snowflake:_Split List At Index
:snowflake:_Waveform

Special thanks to the following for support and inspiration:
@awilliams
@Kulkul
@Vikram_Subbaiah
@Dimitar_Venkov
@Andreas_Dieckmann
@jacob.small

Enjoy :grinning:

21 Likes

Good Job @Ewan_Opie :+1:

2 Likes

Teething issues…

@awilliams has informed me that the v0.1.0 download has illegal characters that the Package Manager doesn’t like.

A v0.1.1 version is available now, same content but without those characters. :+1:

(Installing v0.1.0 from a downloaded zip from https://dynamopackages.com/# to your package directory manually will still work though.)

Awesome stuff, I’m looking forward to using these! :grin:

Well i was gonna try and get some sleep but how can I with this cool new toy sitting in my laptop ready to play with? Looks great, I’m glad to see it out in the world!

1 Like

Minor Update v 0.1.2
5 new nodes!!

:snowflake:_Get All Elements in Project
This node will extract a list of all elements within the current Revit project file or project files from a document path.

:snowflake:_Override Projection Line Color in Views
This node will override the Projection Line color of multiple Elements in their owner views.

:snowflake:_Select PointCloud Points in View
This node allows users to select a specific number of PointCloud Point by creating a selection region in the Active View.

:snowflake:_Set Sketchplane By View
This node allows users to set the Active Sketchplane to be the Active View Plane.

:snowflake:_Set Text Note Width
This node sets the width of a Text Note Element.

I have updated the package website to reflect these additions and added one example showing the creation of a wall using PointCloud point selection in Revit. :grinning:

Enjoy and let me know of any improvements to be made.:wink:

11 Likes

I am really happy to announce a new release of the Sastrugi package v 0.1.5 :grinning:
(Its been a long time coming, and will be the last for Dynamo 1.3)

I only now realise my v 0.1.4 release wasn’t posted here, check out the website for details:
Link for v 0.1.4

Included in this release is the first part of a collection of Pointcloud focused nodes.
This new section of the package allows interaction with graphics overrides, scan/region visibility, locations/transforms and point extraction. I have renamed my original node for selecting Pointcloud points, as well as including one that collects a sample number of points from the entire Pointcloud instance.

Also included is a node that uses basic Python RANSAC :sunglasses: (Wiki-description) to detect planes and point-sets within Pointclouds. (This one did my head in a bit! :thinking:) This can be used to extract features within a cloud for creating geometry, such as floors, walls, ducts, columns and beams.

Node list

:snowflake:_Pointcloud Get Scans and Regions
:snowflake:_Pointcloud Get Transform and Scale
:snowflake:_Pointcloud RANSAC Plane Detection
:snowflake:_Pointcloud Select Points in View
:snowflake:_Pointcloud Sample Pointcloud

:snowflake:_Pointcloud Get Graphics Override Settings
:snowflake:_Pointcloud Graphics Override Settings By Elevation
:snowflake:_Pointcloud Graphics Override Settings By Fixed Color
:snowflake:_Pointcloud Graphics Override Settings By Intensity
:snowflake:_Pointcloud Graphics Override Settings By Normals
:snowflake:_Pointcloud Graphics Override Settings No-Override
:snowflake:_Pointcloud Graphics Override Settings Visibilty Hide
:snowflake:_Pointcloud Graphics Override Settings Visibility Show
:snowflake:_Pointcloud Reset Graphics Override
:snowflake:_Pointcloud Set Graphics Override
:snowflake:_Pointcloud Set Graphics Override for Scans
:snowflake:_Pointcloud Set Graphics Override for Regions

New examples for use of these nodes can be found below and on my website here: https://sites.google.com/view/sastrugi/examples

:snowflake:_Pointcloud Set Graphics Override for Scans - Visualizing Scan Locations

:snowflake:_Pointcloud RANSAC Plane Detection - Extracting Wall and Floor Points

I am looking forward to my first release for Dynamo 2.0 :slight_smile:

17 Likes

Very cool, thanks!

1 Like

Node Update:
An issue was identified with the :snowflake:_Pointcloud Select Points in View node.
Thanks @lucas_20

This issue has been fixed and an updated node will be included in the next Dynamo 2.0 release.

In the meantime, please replace the existing node in the Sastrugi v0.1.5 package path with this one:
__Pointcloud Select Points in View.dyf (70.1 KB)

3 Likes

@Ewan_Opie I have tried using the new node for _Pointcloud Select Points in View, and no matter what I do, it does not seem to work. It seems to produce a null at the “Point.Project” node. Any help would be appreciated!

Hi @kmechengineer,

Are you able to post an image of your graph with the error displayed?
Are you using Dynamo 1.3 or 2.0?

To be able to see this, have you unpacked the node into your workspace?
Just want to check that you are definitely selecting your region from bottom left to top right, and using the node from the website?

@Ewan_Opie You can see my issue in this video https://drive.google.com/file/d/1ZqrWfhD6vH476eqObpiv2fA3zEnRW49w/view?usp=sharing . 1. I am using Dynamo 1.3. 2. I replaced the old node with the new node you posted in this post on May 22nd by downloading the new dyf file and saving over the old one in the “packages folder”. In experimenting to see why your node didn’t work, I pasted the contents into the workspace and saw that the code was running until the “Point.Project” node, at which it returned empty lists. That can be seen in this video https://drive.google.com/file/d/1eZPm_m9vw_hTCSdaf37_EZWTs8OFqeeH/view?usp=sharing . If you noticed that I’m doing something wrong, please let me know! Thanks.

Hi, was trying out your nodes and got small issue (it worked untill it stopped :stuck_out_tongue:)
The node pointcloud select points in view is producing empty lists (both plane and points)
(I might’ve updated my dynamo from 2.0.1 to 2.0.2 in between)
Do you know what might cause this issue?

Seems like it’s the same problem as @kmechengineer
But unlike - my problem is that the python code produces null value at some point…

@kmechengineer and @rafal.actun

I believe I have found the issue.

Unit conversion was displacing the selection window (Imperial to Metric) and this wasn’t allowed for previously. I have fixed the node and re-uploaded it for download from the website.
https://sites.google.com/view/sastrugi/downloads

Can you test this at your end and confirm it is working?

5 Likes

Hey, thanks. I checked it and it works just like before :slight_smile:
lovely, big thanks to u

2 Likes

@Ewan_Opie I tested out the new node today, and it works! Thank you so much for all of the help.

3 Likes

I’ve downloaded the updated node, but I’m still having issues.

Any idea why I keep getting nulls?

First Dynamo 2.0 Version Release :slight_smile:
Bulk updates + 1 New Node + 1 Depreciation

For this release, I focused on reformatting nodes for the new file formatting used in the latest Dynamo versions, and testing that they still perform as expected.

Sastrugi Website Link - Package Version 2.0.0

Node of note:
:snowflake:_Levenshtein String Comparison

This node compares the minimal number of deletions, insertions, or substitutions that are required to transform strings from a source list into a target string and outputs the best solution.

ONYNnZyRTB

4 Likes

As a result of the above topic, I have had another look at the Sastrugi node :snowflake:_Pointcloud Select Points in View and identified that there were deficiencies when dealing with different view types. I have revised the node to allow for better stability of point selection in 3D views, plan views, section views and detail views.

I have also removed the need for the box selection corner order, so users can now create a selection box from any corner, in any direction.

Also, I identified that there is a disconnect between the Active View plane refresh in 3D views that may cause the node to return a Null value. When a user rotates around the Pointcloud in 3D after entering the view, before starting the selection process with the node, the original view perspective normal is used to generate a selection box, not the perspective the user might end up drawing a region in.

This is a workflow issue, so I have included a “Troubleshooting” help message as a node “input” to alert users of the issue and what the workaround will be.

This update can be downloaded from my website for substitution into the latest package folder location. Sastrugi Website Downloads Page

Below are demonstrations for all view use cases.

Plan View Selection

Section View Selection

Detail View Selection

3D View Selection

3D View Selection (Active ViewPlane Issue)

5 Likes