module inscription newsletter haut de page forum mobile

Rejeter la notice

formations etalonnage sur davinci resolve

Nos Formations Etalonnage avec Forest reviennent en octobre !
Adoptez une réelle méthodologie d'étalonnage professionnelle et atteignez vos objectifs créatifs avec nos formations intensives sur 3 jours
Toutes les infos
Rejeter la notice

ateliers live resolve avec forest

Ateliers Live Resolve - Formez-vous en ligne tous les mois avec Forest !
Faites rapidement évoluer la qualité de vos étalonnage avec nos ateliers mensuels de 3h.
Toutes les infos
Rejeter la notice

Formation Lumière - Pratique Intensive du 14 au 16 octobre à Paris
Formez-vous avec cet atelier de pratique intensive dans des conditions exceptionnelles ! Formation finançable.
Toutes les infos

Ateliers et Formations

calcul de largeur d'images via expression

Discussion dans 'Adobe After Effects' créé par WUBA, 11 Janvier 2009.

Tags:
  1. WUBA

    Points Repaire:
    1 650
    Recos reçues:
    3
    Messages:
    552
    Appréciations:
    +0 / 0 / -0
    Salut,

    je fais un projet ou deux lignes bougent, l'une horizontale, l'autre verticale, je me sers de ces lignes pour déterminer la position de 4 vidéos disposées au quatre coins de l'intersection des lignes (si je me fais bien comprendre) j'ai mis deux expressions sur chacune des vidéos, une en position l'autre en échelle et donc le tout varie en fonction du mouvement que j'ai donné aux lignes !

    voici les expressions

    Position :
    x=thisComp.layer("verticale").transform.position[0];
    y=thisComp.layer("horizotale").transform.position[1];
    [x,y]

    Echelle :
    x=thisComp.layer("horizotale").transform.position[1]/576*100;
    y=thisComp.layer("horizotale").transform.position[1]/576*100;
    [x,y]


    je souhaite maintenant mettre d'autres vidéos et les positionner par rapport aux vidéos déjà existantes, donc au lieu de me servire des lignes comme repères je dois me servire des vidéos... donc je dois récupérer leur largeur ou hauteur pour que la position soit bonne...

    Si vous voulez c'est comme un tracking mais tout en direct par calcul des positions...

    Merci pour vos réponses et si vous n'avez pas compris dites-le moi je tenterai de réexpliquer ou je mettrai des images pour illustrer...

    Merci et bonne année ;)
    wuba
     
  2. Sequelles

    Sequelles Modérateur
    Modérateur So

    Points Repaire:
    11 780
    Recos reçues:
    20
    Messages:
    4 261
    Appréciations:
    +2 / 13 / -0
    la largeur et la hauteur c'est width ou height, c'est une propriété de calque, de comp ou de métrage.
    Dans le menu langage d'expression tu les trouvera donc dans Layer General, dans Comp et dans Footage.
     
  3. WUBA

    Points Repaire:
    1 650
    Recos reçues:
    3
    Messages:
    552
    Appréciations:
    +0 / 0 / -0
    Salut Séquelles,

    merci pour ta réponse, je tente d'utiliser l'expression. L'aide de AE n'est pas très détaillée et il me semble que ce que je fais est correcte
    Par exemple :

    x=thisComp.layer("baselignes.mov").width;
    y=60;
    [x,y]

    mais mon claque ne change pas de position en fonction de la variation d'échelle de "baselignes.mov".

    Il me semble qu'il prend la largeur native du métrage, il positionne donc le calque à 720. Comme c'est via le paramètres échelle de "baselignes.mov" que je fais varier la position de l'autre calque ça ne fonctionne pas... J'ai loupé un truc ?

    Merci
    wuba
     
  4. Sequelles

    Sequelles Modérateur
    Modérateur So

    Points Repaire:
    11 780
    Recos reçues:
    20
    Messages:
    4 261
    Appréciations:
    +2 / 13 / -0
    Dans ce cas tu utilises simplement le sélecteur d'expression pour lui indiquer la propriété du calque que tu veux, donc l'échelle. Tu peux pointer la coordonné x ou y qui t'intéresses si tu veux.
     
  5. WUBA

    Points Repaire:
    1 650
    Recos reçues:
    3
    Messages:
    552
    Appréciations:
    +0 / 0 / -0
    merci pour ta réponse

    ca ne fonctionne pas de prendre le width sur base de l'échelle j'ai un message d'erreur... et le système global est déjà nourrit d'expressions (comme présenté dans le premier post) ce qui parallise peut-être un peu certaines fonction !

    j'ai fait un truc qui marche mais qui est bricolé, je cherche donc toujours une piste pour une formule plus rigoureusement mathématique :weird:

    x=thisComp.layer("verticale").transform.position[0]+(thisComp.layer("haut_droite.mov").transform.scale[0]*485)/100;
    y=thisComp.layer("horizotale").transform.position[1]-3;
    [x,y]


    Wuba
     
  6. Sequelles

    Sequelles Modérateur
    Modérateur So

    Points Repaire:
    11 780
    Recos reçues:
    20
    Messages:
    4 261
    Appréciations:
    +2 / 13 / -0
    Si tu veux connaitre la largeur de ton calque en pixel il faut multiplier width du calque avec son scale[0]/100

    si la largueur de départ est 380 pixel et tu lui fais subir une échelle de 120%, ça nouvelle taille 380*1,2
     
  7. matttrebor

    Points Repaire:
    1 200
    Recos reçues:
    2
    Messages:
    235
    Appréciations:
    +0 / 0 / -0
    Si j'ai bien compris, tu as 2 lignes qui forment une croix. Chaque vidéo remplit un des quarts ainsi formés.
    Les deux barres bougent chacune dans leur direction, donc en gros, la croix bouge sur x et y. Chaque vidéo a un coin accroché au centre de la croix.
    Et tu veux que le coin opposé à celui accroché à la croix, lui, ne bouge pas.

    c'est ça ?
     
  8. WUBA

    Points Repaire:
    1 650
    Recos reçues:
    3
    Messages:
    552
    Appréciations:
    +0 / 0 / -0
    Non c'est qu'une cinquième ( et plus) vidéos viennent se placer à coté des vidéos existantes et bougent de manière synchro ! mais Séquelles m'a donné la solution je pense, je n'ai pas encore eu l'occasion de tester mais c'est l'évidence mais je voyais pas...

    Merci Séquelles
    Merci Matttrebor
    Wuba
     
Chargement...
Discussions similaires - calcul largeur d'images
  1. nitrate
    Réponses:
    2
    Nb. vues:
    352

Partager cette page