All you have to do is ray cast in the direction of the lamp starting from the vertices locations and use the points of intersection as the new vertices locations.
The foregoing example showed an orthogonal projection, another kind of projection would choose the ray direction based on the vertices locations as follows.
There is a lot of steps to make this happen, but it is pretty simple, so here it goes:
Make sure that you put your list in a .txt file - for this example call it PointList.txt, and it will use the CSV format.
Load this file into Blender.
Note: In this format every line in the file is one point location in X,Y,Z:
In the 3D Viewport Add a Cube - Shift+A >> ...
Here's a less obvious alternative if you want to add faces / edges to skin a sequence of edge loops and interpolate the shapes.
Some of this layout exists just to generate the sequence of edge loops (shapes), the real work is done by Vector interpolate MK2 and UVConnect. This layout works under the reasonable assumption that the number of verts in each loop ...
The main issue I see with bridge edge loops and using a mesh for this, is that it will be very hard to control the deformation of the mesh as it moves It would require some rigging (bones and an IK system) to work correctly, in my opinion is too much trouble.
An alternative would be to use curves and hooks.
Here's a curve with some bevel. You can control ...
It was indeed derived from Eval Knieval node, but we felt it was cleaner to have dedicated nodes for In and Out instead of a multi-purpose node that switches its outward appearance.
For Get and Set it's shockingly simple, you paste/type the attribute path you want to control and the node automatically detects what kind of Socket to add.
Just to update this question, in Sverchok, Grouping see "Monads".
Lots of useful information at GitHub thread. Copy and paste from Sverchok Github pull request:
Similar to Blender's Shader Trees, Sverchok now how as its own implementation of Group Nodes and we use the ...
In Cycles, the Normal pass can be enabled in the render by enabling the Normal pass in the Render Layer properties - however, this is in World coordinates, not Camera coordinates. To convert the Normal into Camera space we can use the Vector Transform node. This isn't possible with the actual Normal render pass but we can add an additional Render Layer and ...
I would approach this differently,
First create the curved surface by lofting,
Use modulo to make a masklist to discard the faces that represent the space in-between the planks
Then finally extrude the faces using the Solidify node (via the Normal to turn the faces into "plank" geometry.
use the SV Import / Export panel to import this gist:
From this answer, I've changed or set the following:
1- Keyed object
3- Surrounding sphere (viewed as bounds)
4- Bunny (viewed as bounds)
On the right the setting for keyed object (the 2nd PS has 10 for the time parameter).
Above the setting for the surrounding sphere (250 for the 'end' parameter).
And below the setting for the bunny:
i'm one of the Sverchok developers.
There's nothing special about the installation of Sverchok. As suggested by the readme, it is installed like any add-on. If you can install other add-ons then you know how to install Sverchok.
You mention in your comment that you resolved the installation issue by logging into windows as an administrator. I suspect you'd ...
This is one way to do it. currently:
first split the verts of the object
then multiply each vert's vector by a unique matrix (which is some function of z-height here i'm multiplying the vertex's Z component by 51.94)
then recombine using mesh_join.
We don't have a proportional editing method inside sverchok, you'd need to combine math nodes to emulate ...
This node was intended to closely resemble the SVG style of specifying paths, and you should really look at what SVG specs say about ArcTo
;; straight from the svg specs
(rx ry x-axis-rotation large-arc-flag sweep-flag x y)
For a deeper description see this github issue tracker post:
The Image Decompose node (a beta node) requires the first 2 output sockets to be connected, before it produces any output. The docs mention this: http://nikitron.cc.ua/sverch/html/nodes/beta/image_decompose.html
I wrote this node and admit that this requirement is not the most intuitive, and should probably be revised.
But regarding the Image Node (in ...
It looks like that you have an internal vertex/circle of vertices on the top. Can you check the topology before subsurf?
You can see on the second picture that there is one circle with 0 radius inside on this reproduction of your problem.
Then, I dont know sverchok but i guess it should do the trick:
sverch Remove Doubles
bmesh records (or provides access to) the selection history of a mesh.
obj = bpy.context.object
if obj.mode == 'EDIT':
bm = bmesh.from_edit_mesh(obj.data)
elif obj.mode == 'OBJECT':
bm = bmesh.new()
for i in bm.select_history:
Notice the use of type() as the history ...
please, use sverchok join vertices from interpolation to matrix viewer draw (or bmesh viewer or mesh instancer nodes) and to data - your object to multiply
this is gits to import to sverchok:
copy number 3d3d6211602be78e1d82b36492a90372
and import from clipboard (no need paste)
I am not sure if there is a mathematical way to describe this transformation, but the closest I can think of is the Shear transformation.
Or translation of vertices based on the distance to the line perpendicular to some vector:
Something similar happens with Materials/node trees that are not used by any objects (ie - don't have "users". Objects produced by Sverchok don't automatically make those objects a user of a Sverchok node tree. You might need to press the "F" icon in the nodetree header toolbar (or Shield icon in 2.8+), to add a fake user to the node tree, then save.
You can use one node with the List Split node. You'll avoid the repetition of the double Range Int node.
It's just a slightly different variation from your implementation. Apart from building a node that makes all at once, I can't think of a way to simplify it further.
As a developer of Sverchok i'd like to answer in the negative.
No F-Curves or Drivers for a slider/property from a custom NodeTree will show up in the Graph Editor. Custom NodeTrees are things like Animation Nodes and Sverchok, ie: anything not from a Shader Node Tree / Compositor Node Tree.
I asked Blender developers in IRC about enabling this for custom ...
No, and this is by design.
"ScriptNode" is the oldest of the available script nodes, the most recent iteration of the scriptnode is ScriptNode Lite (SNLite). Let me suggest using that instead because it exposes quite a bit more back-end functionality.
Find SNLite's development thread / docs / examples: here
One way around this, is a dummy socket.
As zeffii already suggested you can use the scaling of the matrix to change the size of objects depending on their location.
But Sverchok relies heavily on (nested) lists for generating geometry and its generators are vectorized. If you use a single value in one of Sverchok's generators, e.g. for a sphere's radius, and pipe this sphere's vertices into the ...
You can use a Generators > "Hilbert 3d" node to make the matrix. I'll use this for brevity. Either that or stack a few subdivided planes and join them with Mesh Join.
Each point on the matrix is a Vector, you wanted to check the distance between each vector and the origin vector (0,0,0) and use that distance to scale a sphere placed on that vector point.
Thanks Zeriffi for your answer! Your idea is clever and I will use it!
I found another option by using StripesMULT node (put StripesMULT's Attractor values high enough to avoid differences between planks).
But this method causes some odd stretching and planks won´t remain straight.