mcjLinks

Introduction

This script will scale and orient one or many links so that it/they reach a selected node which we call The Target

Any object can be treated as a link as long as its label begins with the prefix 'Link'

In my tests the links were upstanding (Y+) cylinder and cones

In my tests targets were spheres with their origins at their center

In an upcoming version if you select 2 targets the link(s) base will jump to the location of the first target

then stretch/compress the link(s) so that it/they reach the second target

in this case, you will want to work with 1 link


Installation

The zip package is found at the bottom of this page

unzip it in your daz content folder,

typically :

C:\Users\USERNAME\Documents\DAZ 3D\Studio\My Library

once installed, it will appear in your content library, under

The Daz Script will be found in My Library / Scripts / mcasual

Starting with Windows 7 if you right click on the downloaded zip file

and select the [Extract All ....] pop-up menu item

you simply browse up to your Daz Studio Content Folder

and the files will fall in the proper folder

Use


The short version:

re-label an object as 'LinkWhatever' in Daz Studio's Scene Tab

select a target

run the script

select a 'Link' or many Links in the list of Links present in the scene

specify its stretching-pointing axis,

select a range of frames to process or just the current frame

Click the DoIt Button


The long version:

For your first test:

  • Create a Primitive Cylinder 1 meter long 1cm in diameter

  • You can specify anyone of the 6 axis as the 'Primary Axis' of the link-thing

  • Remember which axis you pick because it will be needed later

  • I almost always create my cylinders along the Y positive axis

  • Now for the origin of the cylinder you MUST specify 'World Origin'


Why? Because this way the origin of the cylinder will be at the bottom of the

Cylinder for an Y+ cylinder or at the left for an X+ Cylinder and at the back

for a Z+ cylinder


This script will re-orient the cylinder's chosen axis so that it

points at the selected target, then it will stretch it along that same axis

until the end of the cylinder touches the origin/location of the target.

( i needed Links because i had a space ship toeing a tennis court )


"Important step:

  • re-label your Link-thing ( cylinder in our example) with the prefix 'Link'.

example: LinkLowerRightCornerOfTennisCourt

"The script will list all the 'Links' in the scene so you can chose one or many

  • "Create a primitive sphere, 10 cm in diameter. This will be the target

  • move the target away from the location where our Y-cylinder stands

for my test i moved the target to [30,60,90] the cylinder was at [0,0,0]


  • Now select your target

  • run the script

  • In the 'Creation Axis' section of the script, select the creation axis of the 'Link'

in our text case: Y Positive

If you renamed your Link(s) properly they should appear in the 'List of Links' list

  • select the Link(s) you want to reach the selected target

  • animators can make the Linking last for the duration of the animation for moving targets

  • non-animators should select the 'current frame only' option"

  • press the do-it button"

and you're done


License

// by mCasual/Jacques

// You can use this software freely for personal or commercial use.

// You may not resell, sub-license or rent this software in any way.

// You may credit this prop to mCasual/Jacques

// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,

// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR

// PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE

// FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,

// ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.