Yes, Volume VOPs I have been using a lot and seem the right way to go for
the noise functions and simple range fit, clamps, gain, plus/minus/mul etc.

For anything point related which we would do in ICE previous sounds like
all wrangles (minus the noise stuff you mentioned).


On Wed, Apr 26, 2017 at 4:05 PM, Andy Nicholas <[email protected]>
wrote:

> VEX Wrangles nearly all of the time. Usually the only reason I go into
> VOPs is if a) I need to use something like the Anti-Aliased Noise VOP
> (which can’t be called as a function directly from VEX), or b) if I’m doing
> shaders. For some reason I find shaders much easier to deal with in VOPs. I
> suspect it’s partly because I just haven’t used them enough, plus
> testing/debugging VEX is generally a bit of a nightmare.
>
> FYI, I’m working on a solution for making noise much easier to use in VEX
> and VOPs as part of the siLib initiative. I know it doesn’t exactly sound
> exciting, but from my experience working with existing noise functions in
> Houdini, I think a lot of folk will find it extremely useful. I’ll explain
> more when I finish it. Show, not tell :)
>
>
> On 26 Apr 2017, at 23:47, Steven Caron <[email protected]> wrote:
>
> OK, great... I can see how to customize it from that snippet.
>
> Just to understand how the power users are using this. Are you using
> wrangle nodes with vex snippets 100% of the time or are you using the VOP
> sub graph for somethings?
>
> Steven
>
> On Wed, Apr 26, 2017 at 11:38 AM, Andy Nicholas <[email protected]>
> wrote:
>
>> If you have a look at the docs for pcfilter, it gives you some VEX code
>> that’s the equivalent functionality. You can tweak to suit your needs.
>>
>> Pasted in from the docs:
>>
>> - - - -
>>
>> float pcfilter(int handle; string channel)
>> {
>>     float    sum, w, d;
>>     float    value, result = 0;
>>     while (pciterate(handle))
>>     {
>>         pcimport(handle, "point.distance", d);
>>         pcimport(handle, channel, value);
>>         w = 1 - smooth(0, radius, d);
>>         sum += w;
>>         result += w * value;
>>     }
>>     result /= sum;
>>     return result;
>> }
>>
>> pcfilter takes the points that were opened by the point cloud and
>> produces a filtered value. The following equation shows how the individual
>> points are weighted.
>>
>> w_i = 1-smooth(0, maxd*1.1, d_i);
>>
>> maxd is the farthest point, and w_i is the weight for a given point at
>> distance (d_i). Points that are closer to the center will be weighted
>> higher with that formula, rather than it being an average.
>>
>>
>> On 26 Apr 2017, at 19:25, Steven Caron <[email protected]> wrote:
>>
>> So pcfilter has weighting built into it?
>>
>> I guess I want to customize this weighting should I not use pcfilter? and
>> use pcfind and loop over the particles?
>>
>>
>> On Wed, Apr 26, 2017 at 11:18 AM, Andy Nicholas <[email protected]>
>> wrote:
>>
>>> Yep, I’m afraid I’m a complete VEX convert now. I never used to be!
>>>
>>> Cris, don’t mind me posting stuff like that, I’m just doing it in case
>>> it’s useful to anyone who’s trying to get into VEX. Actually, when I was
>>> learning to do all the point cloud stuff, I found it useful to see the VEX
>>> when I was trying to understand how to hook up the pointcloud VOPs. I
>>> (still) don’t think it’s obvious how to do it, especially when you start
>>> thinking about if it’s necessary to use pcclose() and where that should be
>>> wired.
>>>
>>> It’s one of the reasons I moved to VEX, things like “loops" and “if”
>>> statements are much easier to understand in VEX than VOPs.
>>>
>>>
>>>
>>> On 26 Apr 2017, at 19:07, Steven Caron <[email protected]> wrote:
>>>
>>> Thanks guys! I didn't want to use VEX even though I might need to in the
>>> long run.
>>>
>>> On Wed, Apr 26, 2017 at 10:57 AM, Andy Nicholas <[email protected]>
>>> wrote:
>>>
>>>> Yep, what Cris said. Here’s some VEX you can drop in a Point Wrangle if
>>>> you want to try that approach:
>>>>
>>>> float radius = 1.0;
>>>> int maxpts = 50;
>>>> int handle = pcopen(0, "P", @P, radius, maxpts);
>>>> @P = pcfilter(handle, "P");
>>>>
>>>>
>>>> On 26 Apr 2017, at 18:37, Cristobal Infante <[email protected]> wrote:
>>>>
>>>> pcopen > pcfilter (P) will give you the nearest positions.
>>>>
>>>>
>>>>
>>>> On 26 April 2017 at 18:27, Steven Caron <[email protected]> wrote:
>>>>
>>>>> i hate to do it but i gotta ask this group because of our shared ICE
>>>>> knowledge...
>>>>>
>>>>> what is the proper way to get closest points and average their
>>>>> position and update the point position?
>>>>>
>>>>> pcfind gives me an integer array, but how do i look up those indices
>>>>> and get their point position?
>>>>>
>>>>> pcopen, then pcimport, do work, then pcexport seems like the right
>>>>> thing to do, should i just ignore pcfind?
>>>>>
>>>>> thanks
>>>>> steven
>>>>>
>>>>> ------
>>>>> Softimage Mailing List.
>>>>> To unsubscribe, send a mail to [email protected]
>>>>> with "unsubscribe" in the subject, and reply to confirm.
>>>>>
>>>>
>>>> ------
>>>> Softimage Mailing List.
>>>> To unsubscribe, send a mail to [email protected]
>>>> with "unsubscribe" in the subject, and reply to confirm.
>>>>
>>>>
>>>>
>>>> ------
>>>> Softimage Mailing List.
>>>> To unsubscribe, send a mail to [email protected]
>>>> with "unsubscribe" in the subject, and reply to confirm.
>>>>
>>>
>>> ------
>>> Softimage Mailing List.
>>> To unsubscribe, send a mail to [email protected]
>>> with "unsubscribe" in the subject, and reply to confirm.
>>>
>>>
>>>
>>> ------
>>> Softimage Mailing List.
>>> To unsubscribe, send a mail to [email protected]
>>> with "unsubscribe" in the subject, and reply to confirm.
>>>
>>
>> ------
>> Softimage Mailing List.
>> To unsubscribe, send a mail to [email protected]
>> with "unsubscribe" in the subject, and reply to confirm.
>>
>>
>>
>> ------
>> Softimage Mailing List.
>> To unsubscribe, send a mail to [email protected]
>> with "unsubscribe" in the subject, and reply to confirm.
>>
>
> ------
> Softimage Mailing List.
> To unsubscribe, send a mail to [email protected]
> with "unsubscribe" in the subject, and reply to confirm.
>
>
>
> ------
> Softimage Mailing List.
> To unsubscribe, send a mail to [email protected]
> with "unsubscribe" in the subject, and reply to confirm.
>
------
Softimage Mailing List.
To unsubscribe, send a mail to [email protected] with 
"unsubscribe" in the subject, and reply to confirm.

Reply via email to