Export geometry with ShapeDiver plugin PRO account other than 3dm format

I’m trying to export my model successfully uploaded to SD. It exports nicely in .3dm format but nothing else even if I choose other formats. Pls see below.

These are the format I have setup in my GH definition using the SD plugin. I have a currently running PRO account and I expected to export the model in the listed formats. Someone could suggest what I might missing? Thx

Make sure you convert surfaces and breps to meshes for OBJ or STL exports otherwise only 3DM format will produce any geometry to download. Let me know if this helped and please share a minimal version of your definition if you still struggle.

Also, please check you have installed the latest version of the plugin.

@pavol thank you, actually I’m after only wireframe drawings to export, so no breps. I thought that 3d .dxf or .ifc can be produced with the export component of SD. …anyhow, would I be better off writing a script to do this task or do you know a plugin which is “SD-friendly” and creates exports? …basically my basic need would be to create csv or json format for point coordinates and lines between them.

Please ignore my previous question, I just need to explore the SD plugin functions better. I guess the JSONConstruct component will be my friend to create nicely formatted objects to consume them alter.

The SDDataOutput component is useful for sending data via API from your ShapeDiver model to other applications. For downloading geometry use the SDExportDownload component and make sure you convert geometry to appropriate type depending on the export format. Learn more about DXF export in this video tutorial. IFC exports are supported by GeometryGym plugin and require more work in Grasshopper to prepare the objects for output. This blog article showcases a great application of this workflow.

Learn more about ShapeDiver from our Documentation page, API reference or video tutorials including this one explaining how to work with JSON objects in ShapeDiver.

1 Like

I’ve tried the SDDataOutput but it seems the platform doesn’t pick them up after re-uploading. The other type of export is available in the UI and also through the API but the the SDDataOutput do not. See below my components in GH:

How to reach the Data outputs from the model via the API and/or in the UI at SD?

To retrieve values from the SDDataOutput use the api.scene.getData() call.

Read more in the API reference and I also recommend these articles to start with the ShapeDiver API.


I didn’t posted posted, but actually I also called api.scene.getData() but returned an empty array. I’ve went trough this https://support.shapediver.com/hc/en-us/articles/360014884512-First-steps-with-the-API where this was explained.

This api.scene.getData(); and api.scene.getData(); and also this api.scene.getData({ name: "MainLegs" }) in my case returns empty array in the data.

Could you post a minimal version of your definition reproducing this? I will have a closer look.

Here is a minimal version of my approach, pls see attached. Basically few lines with one slider input and I wish to export their data in a JSON format. It properly renders in my front-end and also in SD platform, but all api functions regarding output data returns empty arrays.
Parameters return properly as for my original model.

...
    const parameters = await api.parameters.get().data;
    const exports = await api.exports.get();
    const scenes = await api.scene.get(null, "CommPlugin_1");
    console.log('Available model parameters', parameters);
    console.log('Exports: ', exports);
    console.log('Scenes: ', scenes);
...

SD version: 2.22.0
Rhino: 7.0
OS: MacOS Catalina v10.15.6[minimal_version_data_output.gh|attachment]
SD account: ShapeDiver

minimal_version_data_output.gh (8.7 KB)

The data output works fine, try it yourself:

  • go to your model on ShapeDiver
  • open the browser console
  • set context to iFrame of the model
  • paste the call below and you will get the JSON object you defined in your Grasshopper definition

api.scene.getData({name:"SDDataOutput"}).data[0].data

data output

Your data output has a default name so I recommend to change it to something less generic.

correct, it works fine in ShapeDiver’s console but not from another client, like my front-end React app. Please note that the api.parameters.get().data; returns data properly but not the api.scene.getData();

…I tried something else now. I have embed the same model in my code with an iFrame and it works exactly as in ShapeDiver. But still doesn’t with the direct embedding.

@pavol to demonstrate this, please see the minimal app deployed to a server.

Link to the minimal app: https://testingshapediver.balazskisfali1.repl.co/

This is the code: https://repl.it/@BalazsKisfali1/TestingShapeDiver#src/SDViewer.js

You may see below that the parameters returned properly, also there are successful responses for the other calls, data returned an empty array.

A React code review is outside of the scope of this Forum, I’m afraid. Make sure you request the data after the initial scene is loaded and you might also find some answers in the collection of code examples and this React component sample:

thank you @pavol, actually this helped me

I just needed to request the data after the initial scene was loaded and now returns data properly.

1 Like

I am also having trouble exporting to a file format other than the 3dm. (1st image)
I cant seem to find a way to plug a dxf component into “Options”
its reverting to a 3dm file which makes me have to open the rhino file and manually export dxf file after that.


I am trying to follow the tutorial and manually change the input to DXF but I dont get the same right-click menu. (2nd image)

Anyone know where I can find the dxf component (3rd image) so I can plug it properly?

You seem to be working with an old version of the plugin. Please update it to the latest version, ideally using the PackageManager command and searching for the ShapeDiver package. You might need to manually remove the previous version of the plugin from your Components library if you had installed it manually by copying files there.

In the latest version, you will find all Export Options components in the “Outputs” category of the plugin.

Hi Mathieu

Nope I am all up to date, but cant seem to be able to export as dxf format :frowning:
Turns red once I plug dxf into the options


image
image

Thanks in advance

Since several versions of the plugin, the text input containing the file extension has been replace with a ShapeDiver Export Options input. You should use one of the Export Options component of the plugin to pick the file format and the corresponding export options: