Rank: 93 based on 559 downloads (last 30 days) and 16 files submitted
photo

Sven

E-mail
Company/University
University of Michigan

Personal Profile:

Aussie living in the US. Engineering with MATLAB.

Some Interests:
-3D Volume Processing (CT, mri)
-Finite Element Analysis (human body simulation)
-Geometry Analysis (human body morphomics)

Professional Interests:
Image processing, Finite Element Analysis, Human Body Biomechanics

 

Watch this Author's files

 

Files Posted by Sven View all
Updated   File Tags Downloads
(last 30 days)
Comments Rating
24 Jun 2014 Screenshot splitFV - split a mesh Splits a 2D or 3D mesh defined by faces and vertices into separately connected mesh pieces. Author: Sven mesh, separate, split, stl, faces, vertices 28 4
  • 5.0
5.0 | 4 ratings
01 May 2014 Screenshot interpmask - interpolate (tween) logical masks interpmask interpolates (or tweens) masks to transition smoothly between shapes in masks Author: Sven mask, interp1, interpolation, distance, tween, inbetween 13 0
01 May 2014 Screenshot mpoly2mask - converts multiple polygons to a mask Converts an object with multiple boundary contours to a logical mask Author: Sven poly2mask, bwboundaries, polygon, multiple, mask, logical 19 0
07 Mar 2014 Screenshot dbarray - pack and unpack database arrays to matlab arrays dbarray lets you directly send/fetch array[] type database fields into native MATLAB variables Author: Sven database, array, multidimensional, connection 11 0
27 Feb 2014 Screenshot inpolyhedron - are points inside a triangulated volume? Test if 3d points are inside a mesh. Or, voxelise a mask from a surface. Mesh can be non-convex too! Author: Sven inpolygon, stl, mesh, patch, inside, triangles 63 27
  • 4.6
4.6 | 10 ratings
Comments and Ratings by Sven View all
Updated File Comments Rating
06 Aug 2014 surf2solid - make a solid volume from a surface for 3D printing Turns thin surfaces into closed solids by adding a flat base or offsetting by a given thickness. Author: Sven

Hi Mona, the output from surf2solid (a faces/vertices structure) can be given directly to stlwrite:

FV = surf2solid(...)
stlwrite('yourfile.stl', FV)

23 Jul 2014 surf2solid - make a solid volume from a surface for 3D printing Turns thin surfaces into closed solids by adding a flat base or offsetting by a given thickness. Author: Sven

Hi Marios:

1) Use the triangulated faces/vertices input (SURF2SOLID(F, V,...)) instead of the gridded input (SURF2SOLID(X, Y, Z, ...)) and you can make arbitrary shaped surfaces instead of a grid. I would simply put 0 thickness at the nodes you don't want solid instead of NaN thickness.

2) This is possible, you just need to calculate the distance you want each node to be offset and use that 'thickness'. Basically, give the thickness as the difference between the original surface and your desired surface.

Here's a small example that uses most of those options:

v = [2 4 0; 2 6 0; 8 4 1; 8 0 0; 0 4 0]
f = [1 2 3; 1 3 4; 5 2 1]
figure, surf2solid(f,v,'thickness',[0 0 3 2 0])

23 Jun 2014 splitFV - split a mesh Splits a 2D or 3D mesh defined by faces and vertices into separately connected mesh pieces. Author: Sven

Christopher, good spot and I agree completely - the xyzSub variable in the previous was not doing as intended. It would work in most cases simply because meshes are usually over-connected so the bug wouldn't come up. I've updated as per your change which should now be correct and a little faster.

17 Jun 2014 GUI Layout Toolbox Layout management objects for MATLAB GUIs Author: Ben Tordoff

Yep, agreed with Ian. I have quite a few interfaces that I'd like to check for 2014b compliance, but they're all wrapped inside uiextras containers which currently error with the 2014b pre-release. I believe the main issue is the 7 instances of "handle.listener" which need to be updated to addlistener() calls inside Container.m.

15 May 2014 Traveling Salesman Problem - Genetic Algorithm Finds a near-optimal solution to a TSP using a GA Author: Joseph Kirk

Comments and Ratings on Sven's Files View all
Updated File Comment by Comments Rating
09 Aug 2014 stlwrite - Write binary or ascii STL file Export a variety of inputs (patch, surface) to an STL triangular mesh Author: Sven Castro , Luis

Dear

I Might you explain a little detail how to perform the conversion of stl right through points. I have 22050 points (xyz) belonging to the riverbed. My task is to generate an STL file.
In what format should I take the points?
As I run the compile stlwrite ?. They could give me the steps?
Please, could you help me.

06 Aug 2014 surf2solid - make a solid volume from a surface for 3D printing Turns thin surfaces into closed solids by adding a flat base or offsetting by a given thickness. Author: Sven Sven

Hi Mona, the output from surf2solid (a faces/vertices structure) can be given directly to stlwrite:

FV = surf2solid(...)
stlwrite('yourfile.stl', FV)

06 Aug 2014 surf2solid - make a solid volume from a surface for 3D printing Turns thin surfaces into closed solids by adding a flat base or offsetting by a given thickness. Author: Sven MK, Mona

Hi Sven,

Could you give me a clue on how to convert this generated solid topography into STL format? For instance using your older 'stlwrite - Write binary or ascii STL file' code.

Thanks for the awesome work in advance! :)

23 Jul 2014 surf2solid - make a solid volume from a surface for 3D printing Turns thin surfaces into closed solids by adding a flat base or offsetting by a given thickness. Author: Sven Sven

Hi Marios:

1) Use the triangulated faces/vertices input (SURF2SOLID(F, V,...)) instead of the gridded input (SURF2SOLID(X, Y, Z, ...)) and you can make arbitrary shaped surfaces instead of a grid. I would simply put 0 thickness at the nodes you don't want solid instead of NaN thickness.

2) This is possible, you just need to calculate the distance you want each node to be offset and use that 'thickness'. Basically, give the thickness as the difference between the original surface and your desired surface.

Here's a small example that uses most of those options:

v = [2 4 0; 2 6 0; 8 4 1; 8 0 0; 0 4 0]
f = [1 2 3; 1 3 4; 5 2 1]
figure, surf2solid(f,v,'thickness',[0 0 3 2 0])

23 Jul 2014 surf2solid - make a solid volume from a surface for 3D printing Turns thin surfaces into closed solids by adding a flat base or offsetting by a given thickness. Author: Sven Marios

Hi Sven,

Very good work. Two questions.

1) Can I change the rectangular mesh to an irregular (curved) one. I have NaN to areas I don't want to create a solid, but it says that it is not supported.

2) Is it possible that user provide a different bottom surface (assuming that up and down surface have the same x,y coordinates).

Contact us