u/Similar-Sport753

Segment geometry

Segment geometry

What is the most Houdini way to do this nowadays

By segment, I mean the process of partitioning an image into distinct regions or pixel-level masks and linking them to natural language prompts or semantic concepts

-- assuming this is done on a rasterized version of the curve set, and that the regions attributes are then transferred back to the original curve afterwards.

For example: starting from an EPS file of a side view of car, I would like to get some kind of attribute for each point / curve / connected piece, in order to make it easier to make something with said curve.

Any thoughts ? There is so much data available in the context of AI training, it would be nice to be able to augment any geometry in such a way. I guess it's already solved in a much bigger context though, as is almost anything nowadays

For example say you have this in SOP as curves.

how to segment it semantically, to help rebuild it as a 3d model, set texures and whatnot

https://preview.redd.it/w2e0zcsf6ruh1.png?width=612&format=png&auto=webp&s=f8d2ad98e7800e76923d31fe0e6e2d88f6d1c7ac

reddit.com
u/Similar-Sport753 — 5 days ago

Polyexpand on a surface

Is there a robust way to do a poly expand-like on a surface

Maybe not all surfaces, I'm ok with some constraints. This setup kinda works but it's fragile because of the ray SOP. How could I start from a surface and curves on / close to that surface, and end up with this effect ?

Use case: the lines are road center lines, and I'm trying to create roads that still have some useful topology in them, and parcels (i.e what's left on the surface and are not roads)

I'm flexible with how the center lines are generated though.

u/Similar-Sport753 — 1 month ago

Peusdo connectivity on traced files, collections of 2d shapes

How can I compute a connectivity attribute for this file

The shapes may be laid out in a grid, or they may be packed a bit tightly, i,e with parts of one ornament inside the bounding box / convex hull of another.

Also I'm not sure why I can't insert an image in this post ?

drive.google.com
u/Similar-Sport753 — 2 months ago

G213 deep cleaning

I lent this keyboard to a careless person, and half of the keys - on the right side, are sticky and won't come back up after being depressed

I suspect he spilled some soda on it or something

Is there a way to fully clean it without damaging the PCB?

reddit.com
u/Similar-Sport753 — 3 months ago

Use case for the target attribute in Attribute Fill SOP ?

Especially in Poisson Mode, attribute to Match

Or other modes. Not gonna lie; this feels a bit above my level in mathematics, but maybe I could wrap it in something that is more intuitive

I would love to see a few non trivial examples; especially with non trivial boundaries

reddit.com
u/Similar-Sport753 — 3 months ago

Evaluate Attribute From Parameters, points from subnetwork

Attribute From Parameters SOP, in points from subnetwork, recreates the computation graph from a given subnet. This is a meta node.

How to you evaluate back this to the geometry that is computed by this network; i.e the reverse operation ?

reddit.com
u/Similar-Sport753 — 4 months ago

Nasty quads generated by Sweep SOP, to fix the geometry

https://preview.redd.it/f1qstz2n125h1.png?width=792&format=png&auto=webp&s=199106e2df1be949487493b14c1a1b53a036b7c1

Missing HOW in the title, but it's not editable for some reason

I'm looking at alternatives to polyexpand in order to expand a curve to a surface.

Sweep SOP has the abilities to create attributes, namely UV and primcol / primrow

Obviously, having a set of quads in the output, means it outputs kind of topology, it can't do both at the same time, so it's ignoring the bow ties.

Now.. is this nasty soup fixable...

reddit.com
u/Similar-Sport753 — 4 months ago

How to get rid of small kinks on a polyline, which are amplified by a polyexpand

https://preview.redd.it/lw4wk1cfo15h1.png?width=299&format=png&auto=webp&s=81b3c6ff566f7d9cfbfad37abf8c336a3d3bd0c5

https://preview.redd.it/fqtur8cfo15h1.png?width=666&format=png&auto=webp&s=ddc79c448093e97635da260d1d4b0c8195229591

The small kink on the polyline has a huge effect on the polyexpanded surface.

How could I get rid of those kind of artefact

This is the miter limit problem

As illustrated here:

http://tavmjong.free.fr/SVG/MITER_LIMIT/index.html

Solution wth Group edges that have a shared angle below a certain threshold + attribute blur:

https://i.redd.it/o0acxjzf335h1.gif

reddit.com
u/Similar-Sport753 — 4 months ago

Fix self intersection surface, prepare for polyexpand

What is the recommended method to make it suitable for a polyexpand:

This is one slice of a geometry I have no control over

More precisely, this is one clip SOP , Fill polygons enabled, and this is the Filled group

I'd rather not fix the mesh, because I can't really lose details in the mesh,

How do I fix this if it's possible ?

The surface is just visually overlapping, and it has this annoying topology at the bridge left center in screen capture

How can I get rid of those "shared edges" - if the thing was triangulated properly ?

This won't even save as an OBJ..

https://preview.redd.it/nw81n3roeo4h1.png?width=1257&format=png&auto=webp&s=9cb85b3164bde2cd16a754f75ec7d931d8a6b662

reddit.com
u/Similar-Sport753 — 5 months ago

Compiled blocks including non compilable ops upstream

I'm trying to optimize repeatedly boolean-SOP'ing an object (which comes from a Vellum sim) against N grids (the surface) in order to get slices from the object.

Ideally, it should multithreaded on almost all $nproc CPU threads

However the compile Blocks looks like it's trying to also grab the nodes upstream, and in this case it's giong through an op that' s problematic.

How to decouple the final geometry that I'm importing in an object merge, from the next operation, a subnet with a compiled part ? A Stash node, disconnected from its parent works, because it cuts the logical connection, but it's a kludge.

SOLVED

The solution was to put a compile Begin and a Fetch input from the loop block upstream from the left input of the boolean

https://preview.redd.it/2mjyk6pkq34h1.png?width=686&format=png&auto=webp&s=45b2e6096cc3afc6e493064835afdd2082d82cf9

https://preview.redd.it/vme2v6pkq34h1.png?width=538&format=png&auto=webp&s=e5454e412dfd2548f5fc5d2656d331a0a82127a1

hip

MWE

Here is the working multithreaded loop, taking advantage of all the threads on the CPU:

I cut the connection to vellum, replaced it with a Stash

https://preview.redd.it/37zsph6kz34h1.png?width=640&format=png&auto=webp&s=60571ee13d5e8229149d98d274d73a443186c20a

reddit.com
u/Similar-Sport753 — 5 months ago

Ways to call and ship CGAL code from a digital asset

Say you want to rely on computational geometry concepts found in CGAL

I'm thinking for example of alpha wrapping or 3D skeletons - those are just examples , no need to point to an existing method in H for those 2 examples.

I found this post from a few years back

https://www.sidefx.com/forum/topic/74370/?page=1#post-314297

He's talking about a inlinecpp Python module

I've not tested the file yet, but how realistic is it to use this inside an HDA for someone else's workstation.
The target env is MacOS; I also don't mind too much using say, a precompiled executable that would process marshalled data exfiltrated from H, if this is not too dirty to set up

u/Similar-Sport753 — 5 months ago

How to produce a digital asset for an Indie license

Do I need a license that's at least Indie to produce a digital asset that loads on an Houdini Indie ?

I can't find a clear answer, and I don't have (yet) an Indie licence to test this.

I'm probably going to rent one for 1 or 2 years anyway, but it would help if I knew the exact logic

reddit.com
u/Similar-Sport753 — 5 months ago

SVG File, how do the feature of SVG map to cutting, grouping and engraving in XTool Studio

I don't have a laser cutter right now, but I'm assisting some who owns a F2 ultra; this is in the context of producing a file that is going to be imported in XTool Studio

Can someone point me to the documentation, or explain it directly:

which concepts of SVG map to: cutting the material, engraving the material, embossing the material, and grouping the shapes

Ideally, to get things started, I would like to see a SVG file that defines a rectangle, with 1 hole and 1 engraved circle, all of them already grouped so that it can be nested using the provided tool

To be clear, I'm not providing the file to the user. I'm providing the converter.

Is using colors as groups for similar goals enough ?

It looks like there is no need for SVG groups either for the nesting, because it's able to infer holes from the winding rule.

reddit.com
u/Similar-Sport753 — 5 months ago

I'm trying to generate geometry on a local HTTP server, then put it back into SOP

I can see something in the work item, (TOP Urlrequest has a HTTP response for example), but I just can't make it reach a SOP attribute on the way back; I guess I'm missing some kind link between SOP and the work items. If this works, I can then send some geometry through the payload and the loop would be complete.

reddit.com
u/Similar-Sport753 — 6 months ago

I've used it in the past, but for some reason I can't get it to work now.

How do you output a bunch of packed primitives, or maybe the geometry augmented with the filename as an attribute, in order to iterate over each file in a directory

I think it's Top Geometry SOP + filepattern -> geometry import, but I must be missing a checkbox somewhere.

EDIT

Almost nothing to do, just drop a FIlePattern in a TOP Geometry SOP

It wasn't working for some Houdini related bug; its internal stated was corrupted for some reason, and it crashed some time after that.

reddit.com
u/Similar-Sport753 — 6 months ago