Boutique Cinema 4D
Affichage des résultats 1 à 10 sur 10

Discussion: Xpresso pour relier des splines

  1. #1
    Pilier Avatar de MacGreggor
    Date d'inscription
    septembre 2009
    C4D version
    R21 Perpétuelle
    OS
    Mojave
    Messages
    1 668

    Xpresso pour relier des splines

    Bonjour, je suis nouveau sur ce forum, je commence avec C4D (quel logiciel fantastique !), et je voudrais savoir si il existe une technique – genre Xpresso ou autre diablerie – pour faire que les points de splines en contact avec une autre spline suivraient au cas où cette dernière serait déplacée. Me suivez-vous ?

    Imaginez que j'aurais déplacé la spline rouge et hop, automatiquement, les points en contact (A et B) des splines vertes suivraient le mouvement.
    Je sais qu'il y a parmi vous des génies de la modélisation et de la programmation, comme César Vonc, Vesale, Aurety, Rudy, oli_d, Macgreggor, et surtout xs_yann, dans une moindre mesure Sansalvador, et j'en oublie, si vous pouviez me répondre, ça m'aiderait rudement. Merci d'avance !

    Cliquez sur l'image pour la voir en taille réelle 

Nom : 		A.jpg 
Affichages :	8 
Taille :		41,0 Ko 
ID : 			16796

    Cliquez sur l'image pour la voir en taille réelle 

Nom : 		Bjpg.jpg 
Affichages :	8 
Taille :		45,0 Ko 
ID : 			16797



    Cliquez sur l'image pour la voir en taille réelle 

Nom : 		C.jpg 
Affichages :	7 
Taille :		47,0 Ko 
ID : 			16798
    Dernière modification par MacGreggor ; 31/12/2015 à 17h02.

  2. #2
    Pilier Avatar de sansalvador
    Date d'inscription
    décembre 2012
    C4D version
    R13 Studio
    OS
    windows 7 ultimate 64
    Messages
    1 744
    Mmmmm.....si je comprends bien , tu voudrait modifier la cage spline de ta Topolino qui comporte plusieurs splines indépendantes , et le soucis est là , elles sont indépendantes et je pense qu'il n'y a pas 50 solutions pour faire ce que tu veux:

    - connecter tes splines de manière à n'en faire plus qu'une , mais dans ce cas , je pense que ça met le bazar si tu utilises "Spline Patch"
    -sélectionner les splines concernées , puis sélectionner les points respectifs aux coordonnées en commun pour ensuite les déplacer

    Il reste une 3ème solution......celle où je n'ai rien compris à ta question

    Sinon , j'imagine que tu savais déjà tout ça mais je me permets de te le rappeler étant donner tes antécédents céphaliques

  3. #3
    Pilier Avatar de MacGreggor
    Date d'inscription
    septembre 2009
    C4D version
    R21 Perpétuelle
    OS
    Mojave
    Messages
    1 668
    Tu as bien raison pour mes antécédents céphaliques, pour simplifier disons que chaque point d'une spline A en contact le long d'une autre spline B suivrait le mouvement si on déplaçait la B. (Je redis un peu la même chose mais je ne vois pas comment expliquer autrement.)

  4. #4
    Pilier Avatar de MacGreggor
    Date d'inscription
    septembre 2009
    C4D version
    R21 Perpétuelle
    OS
    Mojave
    Messages
    1 668
    Ah, céphalique, avec un seul L, tu parlais de la mémoire, j'avais compris tout autre chose.

  5. #5
    Pilier Avatar de xs_yann
    Date d'inscription
    février 2005
    C4D version
    R19 Studio
    OS
    Mac OS X 10.13
    Messages
    1 990
    Salut,

    Y'a un peu de setup à faire, mais pour faire simple tu peux tenter un truc comme ça :



    Tu définies la position des points que tu veux connecter à la spline par rapport à un offset sur cette spline.

  6. #6
    Pilier Avatar de MacGreggor
    Date d'inscription
    septembre 2009
    C4D version
    R21 Perpétuelle
    OS
    Mojave
    Messages
    1 668
    Merci fiston, je vais tenter le truc. Le développeur de Spline Patch devrait réfléchir à ce problème parce quand on commence à avoir des centaines de splines ça devient un peu fastidieux à la longue de tout bouger.

  7. #7
    Pilier Avatar de xs_yann
    Date d'inscription
    février 2005
    C4D version
    R19 Studio
    OS
    Mac OS X 10.13
    Messages
    1 990


    Je vais tenter d'améliorer ça, c'est intéressant comme problème.

    J'ai déjà fais quelques tests pour calculer une approximation de l'offset le plus correct :
    Code PHP:
    def get_closest_aux(splineposstartend):
        
    pos -= spline.GetMg().off
        start_pos 
    spline.GetSplinePoint(start0)
        
    end_pos spline.GetSplinePoint(end0)
        
        
    dist1 = (start_pos pos).GetLength()
        
    dist2 = (end_pos pos).GetLength()
        
    middle = (start end) / 2.0
        
    if dist1 dist2:
            
    end middle
        
    else:
            
    start middle
        
    return startend

    def get_closest
    (splinepos):
        
    max_iter 20
        eps 
    0.001
        start
    end 0.01.0
        
    for i in xrange(0max_iter):
            
    startend get_closest_aux(splineposstartend)
            if 
    abs(start end) < eps:
                break
        return (
    start end) / 
    En gros il vérifie si le point est plus près de l'offset 0.0 ou 1.0 (0% ou 100% de la spline).
    Si le point est plus près de l'offset 1.0 que 0.0, il cherche entre 0.5 et 1.0, ensuite si le point est plus près de l'offset 0.5 que 1.0, il cherche entre 0.5 et 0.75, etc. Et il converge petit à petit vers l'offset le plus correct.

    En ayant l'offset correct, il suffit de récupérer l'index des points qui sont à coller à la spline (pas très compliqué si il le sont déjà), je pense qu'il y a moyen que la connexion se fasse automatiquement.

    Je sais pas si j'aurais le temps de finir ça maintenant, mais j'essayerai de poster une version améliorée dans le courant de la semaine prochaine.

  8. #8
    Pilier Avatar de sansalvador
    Date d'inscription
    décembre 2012
    C4D version
    R13 Studio
    OS
    windows 7 ultimate 64
    Messages
    1 744
    Intéressant , mais j'ai une question
    Si les points que l'on déplace sont soumis à une interpolation légère , cela va forcément déformer la forme obtenue en amont et du coup , il faudra repasser sur chacun de ces points pour régler les courbes à l'aide de la tirette , je me trompe ?

  9. #9
    Pilier Avatar de MacGreggor
    Date d'inscription
    septembre 2009
    C4D version
    R21 Perpétuelle
    OS
    Mojave
    Messages
    1 668
    En effet tu ne ne trompes pas. Mais déjà si les splines ne se décollent pas, c'est un progrès considérable. Et suivant celles que tu utilises, ça peut ne pas être trop embêtant. Xs_Yann, tu es prodigieux.
    Et bon réveillon tout le monde !

  10. #10
    Dépendant
    Date d'inscription
    septembre 2011
    C4D version
    R20 Studio
    Messages
    388
    salut les gars je déterre ce post car je souhaite réaliser cette opération mais avec des splines dans un cloner ....en gros ca serait de relier les splines placées dans un cloner... avez vous avancé sur le sujet ou pas du tout ?

Discussions similaires

  1. Réponses: 3
    Dernier message: 09/10/2011, 13h19
  2. Question pour splines
    Par Ooya dans le forum Nouveaux membres
    Réponses: 14
    Dernier message: 20/08/2009, 10h53
  3. Comment relier 2 splines entre elles
    Par d-gray dans le forum Nouveaux membres
    Réponses: 10
    Dernier message: 25/05/2009, 10h15
  4. Relier deux splines
    Par tit dans le forum Général Cinema 4D
    Réponses: 2
    Dernier message: 14/01/2005, 14h02
  5. une aide pour les splines
    Par maki dans le forum Général Cinema 4D
    Réponses: 1
    Dernier message: 16/04/2004, 13h11

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •  
Mediaworks - Logiciels 3D | Design Internet - Creation site internet