forum d'entraide Sketchup Artlantis Archicad et bien d'autres
Bonjour sunny

Bonjour et bienvenue sur biblio3d, forum destiné à l'entraide concernant plus particulièrement les logiciels

SKETCHUP - ARTLANTIS - ARCHICAD - PIRANESI
Basketball

Attention : concernant les nouveaux venus, l'inscription est obligatoire pour accéder à la totalité du forum. Après inscription, veuillez vous présenter dans la section adéquate. Nous serons ravis de vous souhaiter la bienvenue dans la communauté ! sourire
Galerie


 [ CINEMA4D ] Script PYTHON (RayCollider) Empty
addthis
Derniers sujets
» [ AUTRES LOGICIELS ] Essais sur Enscape
par rascal Aujourd'hui à 19:54

» [ SKETCHUP plugins ] Universal Importer
par rascal Aujourd'hui à 18:48

» [ ARCHICAD ] Mur Rideau
par Coulou Aujourd'hui à 18:01

» [ TECHNOLOGIE DU BATIMENT ] PLU à appliquer
par Archi43 Aujourd'hui à 9:37

» [ PRESENTATION ] Pierre Yves
par dupas56 Hier à 22:44

» [ ARCHICAD ] Fond couleur vitrage fenêtre en façade
par Coulou Hier à 16:32

» [ ARCHICAD ] Réalisation d'une serre avec outil MUR RIDEAU
par Coulou Hier à 16:29

» [ MATOS INFORM. ] carte graphique : quadro rtx ou geforce rtx ?
par billel Mer 15 Jan 2020 - 18:17

» [ SKETCHUP généralité ] importation de texture
par tenrev Mer 15 Jan 2020 - 18:06

» [ AUTRES LOGICIELS ] NEOBAROK
par Pilou Mer 15 Jan 2020 - 12:08

» [ UNREAL ENGINE ] c'est parti pour cette nouvelle section du forum
par tenrev Mer 15 Jan 2020 - 11:24

» [ ARCHICAD ] Nomenclature de structures composites
par Titou Mer 15 Jan 2020 - 11:01

» [ SKETCHUP généralité ] Import d'un dwg dans sketchup via pconplanner
par tenrev Mar 14 Jan 2020 - 18:06

» [ WIP ] Les jours de pluies d 'AK40Cess
par AK40Cess Mar 14 Jan 2020 - 17:08

» [ SKETCHUP généralité ] Dossier de textures introuvable sur Sketchup 2015
par tenrev Mar 14 Jan 2020 - 16:01

» [ WIP_ANIMATIONS ]Animation d'un intérieur réalisé avec Enscape
par rascal Mar 14 Jan 2020 - 13:46

» [ SKETCHUP plugins ]plugin équivalant à loose to groups
par Pilou Mar 14 Jan 2020 - 10:28

» [ SKETCHUP tutos ] Tuto pour gérer les groupes (dégrouper-renommer)
par rascal Lun 13 Jan 2020 - 22:58

» [ AUTRES LOGICIELS ]TerreSculptor 2.0 - logiciel de construction de terrains
par tenrev Lun 13 Jan 2020 - 18:02

» [ SKETCHUP généralité ] Type fichier pour import vers SU make 2017
par tenrev Lun 13 Jan 2020 - 16:59

» [ SKETCHUP plugins ] MeshRapper Free de Mark C
par tenrev Lun 13 Jan 2020 - 14:08

» [ AUTRES LOGICIELS ] D5 Render Engine
par tenrev Lun 13 Jan 2020 - 13:07

» [ ARCHICAD ] Problème transparence vitrage en façade
par Wutxo Lun 13 Jan 2020 - 12:28

» [ AUTRES LOGICIELS ] ZBrush vidéos VF free du site PolySculpt
par tenrev Lun 13 Jan 2020 - 10:53

» [ SKETCHUP généralité ] : déplacement sur axe vertical impossible (Sketchup 2017)
par tenrev Dim 12 Jan 2020 - 13:15

biblio3d
biblio3d sur facebook
biblio3d sur Linkedin
pinterest
upload



Uploader ici vos fichiers
à partager sur le forum

livre doh Sketchup

[ CINEMA4D ] Script PYTHON (RayCollider)

Aller en bas

 [ CINEMA4D ] Script PYTHON (RayCollider) Empty [ CINEMA4D ] Script PYTHON (RayCollider)

Message par YPY le Mar 22 Jan 2019 - 14:51

Cela ne sert à rien, mais cela produit un méli-mélo de "fibre" autour d'un objet.
Ici un simple titre, YPY (sur un texte MoGraph).

CI-DESSOUS, le Script qu'il faudra copier/coller dans une Expression Python elle-même située à hauteur d'un objet de votre scène :
Script Python:
import c4d
from c4d import utils
import math

def GetCurrentState(o):
   obj = utils.SendModelingCommand(
           command = c4d.MCOMMAND_CURRENTSTATETOOBJECT,
           list = [o],
           mode=c4d.MODELINGCOMMANDMODE_ALL,
           bc=c4d.BaseContainer(),
           doc = doc)
   return  utils.SendModelingCommand(
           command = c4d.MCOMMAND_JOIN,
           list = obj,
           mode=c4d.MODELINGCOMMANDMODE_ALL,
           bc=c4d.BaseContainer(),
           doc = doc)

def main():
   
   update = op[c4d.ID_USERDATA,4]
   if update:
               
       target = op[c4d.ID_USERDATA,2]
       max_seg = op[c4d.ID_USERDATA,3]
       
       if target != None:
           obj = op.GetObject()
           target_poly = GetCurrentState(target)[0]
           
           objM = obj.GetMg()
           targetM = target.GetMg() * target.GetUpMg()

           
           toTarget = objM * targetM.__invert__()
           toObj = targetM * objM.__invert__()
               
           rc = utils.GeRayCollider()
           rc.Init(target_poly)
           
           points = [c4d.Vector(0, 0, 0)]
   
           start = points[0] * toTarget
           direction = c4d.Vector(0, 0, 1) * toTarget - start
           
#            c4d.StatusSetSpin()
           
           for i in xrange(1, max_seg+1):
               if not rc.Intersect(start + direction.GetNormalized() * 0.001, direction, 100000):
                   break
               
               ray_result = rc.GetNearestIntersection()
               pos = ray_result["hitpos"]
               start = pos
               points.append(pos * toObj)
               n = ray_result["f_normal"].GetNormalized()
               refl = utils.ReflectRay(direction, n)        
               direction = refl
                 
           obj.ResizeObject(len(points))
           obj.SetAllPoints(points)
           obj.Message(c4d.MSG_UPDATE)
#            c4d.StatusClear()

Au final cela donne ceci =>
 [ CINEMA4D ] Script PYTHON (RayCollider) Ypy-pi10

 [ CINEMA4D ] Script PYTHON (RayCollider) Ypy-ra10

FICHIER de RÉFÉRENCE CINEMA4D ICI =>
https://www.biblio3d.fr/upload/download.php?id=23&token=3cvCGV61tlhaTz76ltAwp2ff5kF7atpB
clindoeil

***********************
 [ CINEMA4D ] Script PYTHON (RayCollider) Emily-10
 [ CINEMA4D ] Script PYTHON (RayCollider) Man_me10
 [ CINEMA4D ] Script PYTHON (RayCollider) Fakebo10
***********************

-------------------------------------------------------------------------------------------------------------------------
"Honnis soit qui manigance !" @L@ "Mieux pétard que jamais !" "Oui, les Gardiens de la Paix, au lieu de la garder, ils feraient mieux de nous la foutre..!" (Coluche) content
YPY
YPY
méga posteur
méga posteur

Masculin Taureau
Humeur : Dans les Nuages et au-delà !
Date d'inscription : 28/09/2018
Nombre de messages : 569
Points : 1073
Age : 99
Localisation : Alpes de Haute Provence (04)
Emploi : FreeLance

https://www.biblio3d.com/t11783-presentation-je-me-presente-ypy

Revenir en haut Aller en bas

 [ CINEMA4D ] Script PYTHON (RayCollider) Empty Re: [ CINEMA4D ] Script PYTHON (RayCollider)

Message par tenrev le Mar 22 Jan 2019 - 15:26

super , bravo l'artiste bravo bravo

tu aimes bien les fibres en meli-melo rigole

-------------------------------------------------------------------------------------------------------------------------
je ne sais pas grand chose , mais le peu que je sache , je le partage rigole

 [ CINEMA4D ] Script PYTHON (RayCollider) 575088biblio3d

1 PC portable MSI TITAN PRO écran 17''  win10 64 bits  intel i7 Quad core  ram 32go CG GFORCE GTX1080 avec 8go
1 casque VR Occulus Rift
1 vieux PC portable Dell sous Linux Ubuntu 18     ______      1 vieux pc portable HP sous linux Debian  
8 Raspberry pi (3 raspi zero, 3 raspi 3b, 1raspi 4b 1 go de ram, 1 raspi 4b 4 go de ram ) avec Kodi - Raspian - Android - Retropie - Runeaudio - volumio  et plein de projets de mini robotique
-----------------------------------------------------
Modélisation : Sketchup - Rhino - Pconplanner
Rendu : Artlantis - Keyshot - Unreal Engine - Enscape - Twinmotion
Autres : Photoshop - Illustrator - Indesign - Vidéostudio - After Effect - Première et bien d'autres.... la liste est trop longue  rigole
tenrev
tenrev
FONDATEUR DE BIBLIO3D
FONDATEUR DE BIBLIO3D

Masculin Bélier
Humeur : excellente comme toujours
Date d'inscription : 19/01/2008
Nombre de messages : 15280
Points : 25054
Age : 56
Localisation : Dans la quatrieme dimension
Emploi : archi d'intérieur salarié

https://www.biblio3d.com

Revenir en haut Aller en bas

 [ CINEMA4D ] Script PYTHON (RayCollider) Empty Re: [ CINEMA4D ] Script PYTHON (RayCollider)

Message par ogi le Mar 22 Jan 2019 - 15:39

@YPY a écrit:Cela ne sert à rien, mais cela produit un méli-mélo de "fibre" autour d'un objet.

Tu dis ca sert a rien....mais non ! toutes ces options cumulées, peuvent pour moi (par exemple) me servir de base d'objet de distribution pour une lierre avec ivy generator par exemple clindoeil Yop, keep ze good feeling PastoMan clindoeil

-------------------------------------------------------------------------------------------------------------------------
L'imagination est plus importante que le savoir
la religion... pour les moutons...
HP Z6 bi-Xeon 4114/64ram/1080ti
HP Z620 bi-Xeon E5-2620/32ram/1080
DELL T5500 bi-Xeon E5-5530/24ram/quadro3800
ogi
ogi
Administrateurs
Administrateurs

Masculin Sagittaire
Humeur : Je suis Charlot
Date d'inscription : 26/01/2009
Nombre de messages : 5965
Points : 9728
Age : 46
Localisation : Grenoble
Emploi : graphisme, depannage

Revenir en haut Aller en bas

 [ CINEMA4D ] Script PYTHON (RayCollider) Empty Re: [ CINEMA4D ] Script PYTHON (RayCollider)

Message par YPY le Mer 23 Jan 2019 - 8:20

@tenrev a écrit:super , bravo l'artiste..
tu aimes bien les fibres en meli-melo rigole
Merci... les fibres c'est bon pour le transit  content

@ogi a écrit:[Tu dis ca sert a rien....mais non ! toutes ces options cumulées, peuvent pour moi (par exemple) me servir de base d'objet de distribution pour une lierre avec ivy generator par exemple clindoeil
Yop, keep ze good feeling PastoMan clindoeil
J'imagine que ce script peut être dévié vers différentes nécessités, c'est ça qui est bon !
Yep Yep Ogi, je Keep je Keep, Fender for Ever clindoeil

-------------------------------------------------------------------------------------------------------------------------
"Honnis soit qui manigance !" @L@ "Mieux pétard que jamais !" "Oui, les Gardiens de la Paix, au lieu de la garder, ils feraient mieux de nous la foutre..!" (Coluche) content
YPY
YPY
méga posteur
méga posteur

Masculin Taureau
Humeur : Dans les Nuages et au-delà !
Date d'inscription : 28/09/2018
Nombre de messages : 569
Points : 1073
Age : 99
Localisation : Alpes de Haute Provence (04)
Emploi : FreeLance

https://www.biblio3d.com/t11783-presentation-je-me-presente-ypy

Revenir en haut Aller en bas

Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum