Hi,
you can use xyzdist() for example to get distance from the prim center to target geometry. If the distance is very close, the primitive belongs to the cell and if the distance is higher the primtive belongs not to the cell. Since you have no overlapping parts or gaps between the divided parts and the circles, this method should work.
@edit Tomas was faster
Found 477 posts.
Search results Show results as topic list.
Houdini Indie and Apprentice » How to retain piece attributes after triangulation?
- Aizatulin
- 477 posts
- Offline
Technical Discussion » Copy packed houses along a road curve without any gaps?
- Aizatulin
- 477 posts
- Offline
Sure ,
if you want to avoid intersections completely, you can also iterate with bisection method, until the added geometry touches the rest of the geometry (which was added before). But this will take a lot of more time (if you have to check, if the geometry intersects). Here is another example to show the difference. There is room for improvements/modifications.
if you want to avoid intersections completely, you can also iterate with bisection method, until the added geometry touches the rest of the geometry (which was added before). But this will take a lot of more time (if you have to check, if the geometry intersects). Here is another example to show the difference. There is room for improvements/modifications.
Edited by Aizatulin - 2023年2月12日 12:25:44
Technical Discussion » Copy packed houses along a road curve without any gaps?
- Aizatulin
- 477 posts
- Offline
Hi,
here is an (older) experimental file and I'm not sure if this covering your problem but you can try it.
The first input of the node should be set of objects (unpacked) and x-aligned with a class attribute and the second input a poly curve. The node should align the objects along the curve without any gaps (or with defined gap space). But you can't avoid overlapping parts if curve is changing the direction (etc...).
I thought there was an inbuild node inside houdini already, but I have not found any which worked for this case.
here is an (older) experimental file and I'm not sure if this covering your problem but you can try it.
The first input of the node should be set of objects (unpacked) and x-aligned with a class attribute and the second input a poly curve. The node should align the objects along the curve without any gaps (or with defined gap space). But you can't avoid overlapping parts if curve is changing the direction (etc...).
I thought there was an inbuild node inside houdini already, but I have not found any which worked for this case.
Technical Discussion » Polyextrude does not preserve point groups
- Aizatulin
- 477 posts
- Offline
Not this way, but you can store the point number id for example, which gets duplicated and after this you can recreate the edge group, if the pair of ids of two neighbours correspond to a point pair of an edge within the group.
Edited by Aizatulin - 2023年1月3日 03:31:09
Technical Discussion » Connect corresponding points in Vex
- Aizatulin
- 477 posts
- Offline
If you have two groups you can isolate the points and create for each point pair a new prim. If you just want the connections (without the curves), you start with new wrangle and use the curves as second (third) input. In VEX you just add both points (of the point pair) and one prim, where each point becomes one vertex.
Houdini Learning Materials » Connect points, looking (aiming) to each other. VEX.
- Aizatulin
- 477 posts
- Offline
In VEX you can do everything you want. Just loop over the points and apply any condition. For this you can use existing VEX functions. For example for the cone filter you can use pccone(...) function to get a (sub)set of points, which are in a specific cone. For Distance there are also functions like distance(x,y).
In the example above the loop was over point pairs, it is probably more intuitive to use a single loop.
For example if you have Geometry you want to delete all points, where the y-Coordinate is smaller 0, which means you want to keep all points, where y is greater or equal to zero.
Here is an example for points using a loop in detail wrangle and a point wrangle.
In the example above the loop was over point pairs, it is probably more intuitive to use a single loop.
For example if you have Geometry you want to delete all points, where the y-Coordinate is smaller 0, which means you want to keep all points, where y is greater or equal to zero.
Here is an example for points using a loop in detail wrangle and a point wrangle.
Houdini Indie and Apprentice » Nails not falling correctly
- Aizatulin
- 477 posts
- Offline
I get better results after choosing division method by size (value ~ 0.01) for the piece node (volume tab).
Edited by Aizatulin - 2022年12月5日 12:47:00
Technical Discussion » Square to circle
- Aizatulin
- 477 posts
- Offline
Hi,
I've done some experiments in VEX with circular beveling a while ago. It works for open polysplines (with a modification for closed polysplines aswell). It also works for non-planar curves. But there might be some issues, if you don't set radius correctly, you may have overlapping parts. The workaround using the polybevel for extruded shapes (which alecaille mentioned) gives similar results, but you have to identify the original path points, which can be done (for example) by adding new polylines for each neighnour ignoring the edges, where the halfedge count is 2 (two sided edge) and polypath to connect each segment.
I've done some experiments in VEX with circular beveling a while ago. It works for open polysplines (with a modification for closed polysplines aswell). It also works for non-planar curves. But there might be some issues, if you don't set radius correctly, you may have overlapping parts. The workaround using the polybevel for extruded shapes (which alecaille mentioned) gives similar results, but you have to identify the original path points, which can be done (for example) by adding new polylines for each neighnour ignoring the edges, where the halfedge count is 2 (two sided edge) and polypath to connect each segment.
Technical Discussion » Coordinates rounding?
- Aizatulin
- 477 posts
- Offline
I can't verify this by my side, if I turn on full precision on in the spreadsheet 2.5 is still 2.5, but 2.1 turns to 2.0999999046325684, which is what I was expecting. Even if you rotate a vector by angle 0, the components remains the same (but if i rotate by 2*pi, I will get -1.7484555314695172e-07 for one component). This seems to be a value around the machine constant of single float precision. I don't know how you get your values, maybe you can share your file.
Here is my example.
Here is my example.
Edited by Aizatulin - 2022年12月3日 12:31:02
Technical Discussion » Coordinates rounding?
- Aizatulin
- 477 posts
- Offline
2.5 should be exact in binary representation (like 0.5/0.25/0.75) but not (2.1/2.6/0.1) for example, but there can be errors if 2.5 is the result of a calculation.
Technical Discussion » Multi-rail skin?
- Aizatulin
- 477 posts
- Offline
I've done some experiments with spline rail deformer but it is very limited (only works in x-direction, only works if curves in right order and planar in XY/XZ-plane, only works if geo fits well, etc...) but here is a modification of your file if you are interested in.
Edited by Aizatulin - 2022年11月30日 18:02:59
Technical Discussion » Multi-rail skin?
- Aizatulin
- 477 posts
- Offline
Hi,
I don't think there is a general solution for this problem and even if you have only three rails. It also depends, how you want deform your your shape along the rails (degrees of freedom). Usually you just (translate/rotate/scale) it, to match the rails. But for some special cases there might be solutions. Do you have any comparable examples from other programs? For example there is a rail deformer in Cinema4d which has restrictions but it can use 4 rail splines.
I don't think there is a general solution for this problem and even if you have only three rails. It also depends, how you want deform your your shape along the rails (degrees of freedom). Usually you just (translate/rotate/scale) it, to match the rails. But for some special cases there might be solutions. Do you have any comparable examples from other programs? For example there is a rail deformer in Cinema4d which has restrictions but it can use 4 rail splines.
Technical Discussion » Find the radius of a sphere where n points fit in with dist?
- Aizatulin
- 477 posts
- Offline
Hi,
not sure if I understood you correctly, but if you are searching for radius, where a specific ratio of fits in.
For example if you have 100 points and the ratio is 0.25 you are searching a radius, where 25 points are in the sphere with this radius.
You can try bisection method for this. Here is an example, for a 2D scatter plot (it just better for visualization it also works for 3d). Also there is usually not only one radius, but a range with minimum and maximum radius, where this condition holds.
not sure if I understood you correctly, but if you are searching for radius, where a specific ratio of fits in.
For example if you have 100 points and the ratio is 0.25 you are searching a radius, where 25 points are in the sphere with this radius.
You can try bisection method for this. Here is an example, for a 2D scatter plot (it just better for visualization it also works for 3d). Also there is usually not only one radius, but a range with minimum and maximum radius, where this condition holds.
Houdini Indie and Apprentice » copy and instance
- Aizatulin
- 477 posts
- Offline
Hi,
the orientation on the line must be a point attribute (which is the case in the foreach, but not on the right side). To do that, you can just set the attribute depending on the point number. Here is an example.
the orientation on the line must be a point attribute (which is the case in the foreach, but not on the right side). To do that, you can just set the attribute depending on the point number. Here is an example.
Edited by Aizatulin - 2022年11月26日 07:58:15
Technical Discussion » Applying carved line with easing to "bornFrame" attribute
- Aizatulin
- 477 posts
- Offline
Technical Discussion » Applying carved line with easing to "bornFrame" attribute
- Aizatulin
- 477 posts
- Offline
Hi,
if you use a solver you can check the point distance to the curve of the previous frame. If the point is close, it is already born and you can read the attribute from the previous point. If not, the point is not born already and it should get the current frame number. Since carve is creating new points (the last point), the frame can still change until the point is fixed.
if you use a solver you can check the point distance to the curve of the previous frame. If the point is close, it is already born and you can read the attribute from the previous point. If not, the point is not born already and it should get the current frame number. Since carve is creating new points (the last point), the frame can still change until the point is fixed.
Houdini Indie and Apprentice » Trying to wrap my head around the IK Solver VOP node
- Aizatulin
- 477 posts
- Offline
Houdini Indie and Apprentice » How to disable multiparm parm with combined conditions?
- Aizatulin
- 477 posts
- Offline
Houdini Indie and Apprentice » Curve Booleans
- Aizatulin
- 477 posts
- Offline
Houdini Indie and Apprentice » Curve Booleans
- Aizatulin
- 477 posts
- Offline
-
- Quick Links