Jump to content


  • Content count

  • Donations

    0.00 CAD 
  • Joined

  • Last visited

  • Days Won


AntoineSfx last won the day on March 2

AntoineSfx had the most liked content!

Community Reputation

40 Excellent

About AntoineSfx

  • Rank

Personal Information

  • Name
    Antoine L
  • Location
  1. Bridges on intersecting curves

    Here is what I discovered and ended up using: If you drop a convert line SOP for each curve upstream from the intersection analysis, it make your life really easier in terms of breaking the curve like I intended to: You can use the output attributes from IA to carve the curve by iterating over the intersection points, then doing something like applying a carve SOP to the segments (which are primitives due to convert line) using the sourceinput + sourceprim to find the two segments, then sourceprimuv[0] to find the intersection point on those segments.
  2. Bridges on intersecting curves

    Can you provide the file ? There is a requirement on the input geo that I don't get.
  3. Bridges on intersecting curves

    I don't understand how to use it. I can't even find the intersection between two triangles. However I can get curvesect to work, but it lacks the output attributes of Intersection Analysis (if it worked as expected) Is it possible for you to provide a minimal example using intersection analysis ?
  4. I have one self intersecting curve in plane, or maybe two. Say curve 1 is the road, curve 2 is the river. I'm looking a for a way to find the points on the road curve that intersect the river curve, ideally one point per intersection so that I have a clean location downstream to copy a bridge or something. I'm also interested in the case of just one self intersecting curve (for example, in order to copy dominoes on the curve and run a RBD simulation). There may or may not be a point on either curve near the intersections. I had moderate success using attribute transfer + carve In the screenshots, I did it manually using group point / edit / translate Y / soft radius So basically I'm looking for a way to split the curves - not at their intersection points, but further down and up in order to make bridges...
  5. One-liner for point(0,"P",8).z in point wrangle

    Thanks. I now realize that point is a template function - meaning the type which is returned depends on the second argument "P" , thus it's not obvious to the compiler that it's a vector at parse time. How hard would it be for the user to define a function with this signature once and for all: vector vpoint (int input; int ptnum) return vector(point(input,"P",ptnum)) or something closer to this related trick: v@opinput1_P.y -- but with an additional argument
  6. One-liner for point(0,"P",8).z in point wrangle

    No. It's like point() is seen as a float unless it is assigned explicitly to a vector.
  7. vector p8 = point(0,"P",8); @P.z = p8.z; Is there a shorter way to do it ?
  8. Do you know a way to export data from FreeCAD to Houdini in a way that would allow me split the object along the boundary curves once in Houdini ? Typically, CAD programs have a much stronger geometric kernel (FreeCAD uses OpenCASCADE) and I'm using it for its Fillet tools, which is very superior to Houdini. This is not really surprising as it is using Brep, and it actually can make a fillet between curved surfaces, where Houdini can only see polygons. So, how can I do that ? I didn't have much luck with the CAD formats in Houdini (namely STEP and IGES)
  9. Cushion pattern

    There is a small bug in your file, the input geo to sweep1 is not an Eulerian path on the points, and about half of the edges are swept twice, hence potential problems down the graph (either some zfight at render time / boolean problems / bad performance...) I think it can be fixed with a few Divide / Remove shared edges / Group Edges / Unshared + some logic to find the longest outer edges or something
  10. The metaball not only interpolates the location of the centers of the points where you instantiate the metaball, but also the color of those points. The documentation doesn't seem seem to mention it, but any attributes on points are also interpolated on the surface of the metaball. Documentation seems to be a bit dated though Here are a few pictures to explain it better, and why it's not a bug, but a feature: The spheres are just spheres copied to points with a Cd attribute The metaballs are metaballs created from the same points. Notice how a single connected metaball captures several points of different color Then you can see the cross section of said ( converted to polygon ) metaballs which now explains why there are several colors for each polygon. Each circle is in fact a n-gon with colors set a its points. At some point, the display driver (OpenGl) has to triangulate it because it can only display triangles (citation needed...) Note than the triangulation is not exposed to you, in case you actually like the streak effect If you like the multicolored version but you want to have some control on it, you have to somehow do the triangulation yourself. For example, scatter some points in it, merge them with the n-gon, triangulate / Edges=* / Flood from CHB / then attribute Blur Cd is what I did. EDIT ( There is another layer of color.. Boolean also somehow use the color information from BOTH inputs in the output. I don't really understand how he's using the information on the surface (in the case solid INTER surface) to compute the color attribute on the output, but you can use this feature at your advantage by setting a color beforehand, otherwise it will set it to White for you inside the Boolean SOP. I think this tells the whole story. Not sure what the use case would be for setting a color on inputs in Boolean, as it will be a mess anyway
  11. I'm trying to have Activation for velimpulseforce1 set to 1 during 1 frame when the sphere object is close to the point. How do I do that ? I tried something in CHOP (Object (Import) / Compute Distance) but the distance is constant. It looks like it's computing the distance at Object level using the tx/ty/tz parameters. How do I compute the distance between the actual geometries ? jumpDop.hipnc
  12. Alternating a Switch Node when using the Chain Sop

    Yes that's easy. The idea is to give to each connected piece the correct "class" primitive attribute. Here is one way to do it. Using Chain SOP. alternating.hipnc
  13. Break object using material data

    Yes, there is a roughness ambient occlusion file in the texture package, which provides a good starting point for cell separation IMO. I think I'm going to compute the cells / stones outline using both COP and the lines I've drawn, if one of them is not good enough. For this one texture, I think the quickest way (for me) would be to define the joints by hand.. I tried to avoid it because it's a bit tedious..
  14. Break object using material data

    This is a cobblestone texture from texturehaven.com https://texturehaven.com/tex/?c=floor&t=cobblestone_floor_05 What would it take to use the mortar joints in the image to create some geometry that I could use map to the object in uv space and use as a cutter in order to break the object along the joints only ? I was thinking of creating one curve per horizontal line, one curve per vertical joint, then merge all of those, triangulate by forcing the edges on the existing polygon, then somehow use that to cut the object. Obviously it's not already done. Can you point to a more efficient way to do this maybe in COP ?
  15. What is the current way to produce an animation consisting of several shots of not yet known length, sharing some assets ? One simple way would be to put everything in the same scene, move the camera and objects as I need, and use a camera switcher. It doesn't look practical though for the moving objects. In what logical unit should a shot be put, and how do I chain them together ?