Beginner: Assign Transform

Synchronized objects can be transformed and manipulated dynamically when ‘Moveable’ interactivity is activated, and the output can be used as a parameter in a grasshopper document. Applying transformations to a Sync Object in grasshopper however will not result in an update in the geometry sent to a Fologram device. To apply any transformations after the Sync Object component, the ‘Apply Transformation’ component must be used. This component takes a Synchronized Geometry as an input and allows any transformation data from elsewhere in the document to be applied to the geometry. The transformation data will be sent to connected devices, and will update the affected geometry.

Example file:
In this example, a Synchronized Geometry has a transformation from a Move component applied. The wooden sphere is the location of the Geometry in the Sync Object component, and the red preview sphere indicates where it will be located in the Fologram session.
1.09 Assign transform.gh (358.7 KB)

Hi Sean
Do you have any teaching videos
I am currently using a mobile phone to achieve ar
I want to implement the modeling parameters in grasshopper directly in the ar environment
I checked related articles, but I can hardly imagine it by text alone
Is there any relevant teaching video? If not, do you plan to make it in the future?

                                                                                                                           Gavin

Hi @gavin20181001 welcome to the Fologram Community Forum! We recently ran a free webinar introducing the basics of Fologram for Grasshopper through the mobile phone application. In terms of modelling parameters, I assume you mean sending your grasshopper sliders/toggles/value lists directly to your device for remote control? Check out this part of the webinar to see a full explanation.

Let me know if that’s what you’re after!

Hi Sean,

I have looked at the learning examples.

For me,a mobile phone user,I will use the common functions,

modeling and then using the mobile phone to implement ar.

About article mentioned “track functions”,it seems more efficient for Holoens2,right?

But I want to ask , isn’t fologram only surport Holoens2 on headwear deviec ?

 Gavin

Hi @gavin20181001,

Most tracking functions are available on both Fologram for the HoloLens 2 and Fologram for mobile (with the exception of hand tracking, which is exclusively for the HL2). For tasks that require higher degrees of precision (eg. fabrication tasks), you’ll need a HoloLens, but for general model viewing and application creation the mobile device is great to use.

Some of the tracking components in Grasshopper that work nicely on the mobile app include Track Device, Track Pointers, Track Markers, Track State and Track Taps. I’ve included some examples of each one in the above links for you to have an experiment with if you’re interested. Let me know if you have any other questions!

1 Like

Hi Sean,
You guys are amazing !!
I tried to use FOLOGRAM to make a sole shape
The projection is really stronger than on the computer screen !!
Really fun
It’s so cool !!! :rofl:

1 Like

Awesome video Gavin, using the app for objects around the same scale of a shoe seems to work really well.

1 Like

Is there a way to constrain the movability of a sync object to a plane? say we want a sphere to be movable but only along the xz axis? Thanks

Hi @kerbs, we don’t offer any specific features to move along a plane, however if you want to build an application snap movement to a plane, one way might to be to create a reference object or widget that acts as the thing you move, and apply this movement to another Sync’d object. Here is an example:


Plane Snapping.gh (6.2 KB)

You could then extend this logic with a sync’d Value List to snap to different planes:


Plane Snapping_Value List.gh (9.5 KB)

You can of course move your entire model along these planes in the Edit menu in the Fologram app. Hope these examples work for you.

Thanks so much for this guidance! I will give these examples a try :slight_smile: