To add to documentation of Max's nodelist and documentation of macros:
In Max's nodelist dropdown menu, under Macros, the selections In and Out which apply to macros, are available if and only if a macro node is present in the nodeeditor canvas, and is currently highlighted.
- Brian
(The dropdown list is long, but it is nice to be able to scan down the list to find a desired node, without having to select multiple menus.)
The Split node has 3 versions, corresponding to its 3 menu options, Numbers, Points, or Objects.
Numbers option inputs, and outputs, numarrays.
Points option inputs, and outputs, pointarrays.
Objects option inputs, and outputs, objectlists.
The Split node is multitasking, so a stream of many input items will be processed.
The Split node has a "Mask" boolean (0's & 1's) input, which sends the Num inputs, or Pts inputs, or Obj inputs to either the "1" output, or the "0" output. The input stream is separated into two output streams.
The Split node has 3 modes, Repeat, Long, and Short, which control how the mask is applied to the input stream. Multitasking documentation (should) explain how the modes are applied.
For any one item of the input stream, the Split node does NOT extract its contents. For example, a point does not have its x,y z coordinates extracted.
Under the Basic menu, the "Extract" node, in Points mode, extracts one of 7 elements, X, Y, Z, rX, rY, rZ, or Scale
Under the Points2 menu, the "splitPts" node extracts 10 elements.
Using ConvertPts on the point output shows the correct right hand point. (The "inverted" point.)
The vector displayed for the inverted point does seem to be incorrect. I'm investigating the code, which seems very difficult for my brain to understand :-)
- Brian
In the vector.js code, line 31 creates the vectors, using orient_line_to_line. line 287 codes for the incorrect inverted vector.
this and that do not make sense to me...
I've watched only #6 and #10, so far. The perspective is about areas and volumes of linear transformations.
#10 is about Cross Product, in 2D and 3D. A negative determinate means that the 3rd vector of the cross product is in the negative direction.
So maybe the vector.js code for Cross Product, line 287, should take the determinant (3D?), and then the code in line 34 modified so that in the case of a negative
determinant, bPt1 would be modified to be (0, 0, -1), instead of (0, 0, +1). (?)
Then the third vector "c" would still follow the right hand rule.
(Note that point "c" is calculated correctly, it is just the vector display that is not correctly oriented for the case of a negative determinant.)
In Pilou's example, when the order of the Cross Product is reversed, the sign of the determinant is reversed. The displayed vector should be negated.