Jump to content

guache

Members
  • Content count

    49
  • Donations

    0.00 CAD 
  • Joined

  • Last visited

Community Reputation

0 Neutral

About guache

  • Rank
    Peon

Personal Information

  • Name
    Joseph
  1. Align primitive orientation

    Within a "For Each Primitive" loop, use a Switch SOP that tests the sign of the Y component of the primitive's normal. If it's negative, switch to a Reverse SOP.
  2. Vertical text marker

    Which one, specifically? I see "visualizers.hip" and "attr_visualize_ql_SOP.otl" but none of them produce vertical text markers
  3. Is there a way to align a text marker (i.e. a visualized text attribute) vertically? I'm dealing with thin, tall objects nearby (like skyscrapers) and horizontal text markers are not very useful, because it's hard to tell which object they refer to.
  4. I managed to avoid this problem, but I'm still curious about suggestions how to do this in Houdini. On a 2D plane, I needed to tightly "pack" a bunch of circles of differing sizes ("pack" in the sense of bringing as close as possible, without overlaps). Each circle has its own "id" and the "id" of its "best friend", that is, the most preferred neighbor (see pic below). The goal is to pack the circles in as small a space as possible, while minimizing the sum of distances between all "friends". The Point Relax SOP doesn't really address this problem: it spreads the circles around, but doesn't optimize distances between "friends". One solution could be an RBD sim: spread the discs around, lock them to the plane, give each one a "force" towards its friend, and run several sims with different starting positions, and pick the best result. I managed to avoid this by having equal circles in a hexagon formation (bottom pic), and simply assigning "friend ids" to adjacent circle pairs. But if anyone sees some other approach to the original problem, I'd love to hear it.
  5. I have a non-graphic application which spits out CSV data. I'd like to read it into Houdini as points with attributes. I can format the data, so that one CSV line contains all the properties for one point: X,Y,Z,"attrib1","int","attrib2","string"... etc <- where "int" and "string" are attr types Is there a built-in SOP in Houdini that can read such data and create a point with attributes for each line? If not, what's the best option? A Python SOP that reads this in and creates the data? Thanks.
  6. Thanks, it seems simpler. I got the textures to show up and react to path changes instantly with the following Display Options: Texture->Display Textures: On Material->Use Materials: On Material->Apply Material Stylesheets: On Material->Apply Per-primitive Stylesheets: On Material->Material Assignment: Always Update Material->Interactively Update Materials: On Lights->Quality->Headlight Only Lights->Diffuse: On
  7. What's the simplest and most bullet-proof way to display a texture on a simple grid in Houdini viewport (i.e. real time openGL)? I've tried using simple materials (like "Constant" or "Principled") but it seems clunky. I always run into issues like requiring several settings in "Display properties" for the texture to show up, or the textures (read from files) not updating in the viewport, if I change the texture path etc. Ideally, the texture path would be just a string attribute on a grid, and the viewport would show it right away, and react to all path changes instantly.
  8. I have a flat, 2D shape with a messy interior (crisscrossed lines etc) and I want to extract only its 2D outline or silhouette. The post below suggests that Triangulate 2D can do this. Which settings in Triangulate 2D do this? Also, if you have other ideas how to extract an outline from a "messy", flat 2D shape, please let me know. Convex hull node
  9. I want to get intersection points between two sets of lines, but I can't get curvsect to do this, no matter which options I try. All lines are on the same plane. What am I doing wrong? curvesect2.hipnc
  10. I want to use an ortho-style photo as a correct size reference in a Houdini ortho view. The full width of the image represents 3 cm and I use 1 unit in Houdini as 1 cm (I can change the image's pixel resolution to whatever I want) As far as the size values for the background image, is there a formula that allows scaling the background image so that its width is 3 units wide in a Houdini ortho view? I can fiddle with the size values manually, but I'd prefer if there was a math formula that would get me there quickly and exactly.
  11. I use Houdini to design parts for 3D printing. The requirement for 3D printing is manifold geometry ("watertight" models, no single edges, no "T" connections between polys etc). I have a polygonal object, the result of many Boolean operations. From my, human view, it looks "watertight": it's a polygonal shell that encloses a definite region in space, with no holes. But my slicing software (Simplify3D) gives me "non-manifold" verdict, high-lighting in red many of the Boolean'd edges. Is there some way in Houdini (SOP or OTL) to cleanly rebuild a mesh from scratch (based on an existing mesh) and clean it up for 3D printing? For example, turn it into a point cloud, then I, as a human, could provide the software with clues where "inside" and "outside" is (e.g. by creating points and defining them as "inside" and "outside" the model. The SOP or OTL would then rebuild all polys in a way that creates a consistent, clean mesh. I tried the PolyDoctor SOP and turned most of its "Repair" options on, but it didn't do anything useful.
  12. Thanks for all the ideas. I just came up with a visual analogy for this type of a problem: imagine you have a gnarly tree trunk and you scan it with a laser scanner around its perimeter at a height of, say, 3 feet off the ground: you get a string-like, convoluted point cloud that "envelops" or "encloses" the trunk's cross-section at that level. The goal is to reconstruct the cross-section from the points, as a single, closed polyline. This example has the "no-overlaps" condition built-in, as a tree can't really grow "into itself", like an arbitrary curve can.
×