//COMP
NomDeLaComp="01";
LargeurImage=1920;
HauteurImage=1080;
AspectPixel=1;
Duree=50;
Frequence=25;
//FORME
TailleEllipse=[100,100];
EllipseCouleur=[255,255,255];
FormeCouleur=[0,100,100];

ContourLargeur=10;
ContourCouleur=[100,100,100];

//ADD COMP
Comp=app.project.items.addComp(NomDeLaComp,LargeurImage,HauteurImage,AspectPixel,Duree,Frequence);

//ADD ELLIPSE
Forme=Comp.layers.addShape(); // Calque Forme
Forme.name="01";

//// GLISSIERE /////////////////////////////////////////////////////////////////////////////////////////01
//Forme.property("Position")."([100,100]); //  Calque - Transform Group ( hors Calque - Contenu )

var FormeContent = Forme.property("Contents").addProperty("ADBE Vector Group");// <- add GROUPE ( dans contenu hors transform group ) "Calque" - "Contenu" - "Group"
FormeContent.name="+ GROUPE";

//// GLISSIERE /////////////////////////////////////////////////////////////////////////////////////////02
//FormeContent.property("ADBE Vector Transform Group").property("ADBE Vector Position").setValue([100,100]); // <- set Value Position : "Calque" - "Contenu" - "Group"  - "Transformer:Group" - "Position"

var FormeGroup = FormeContent.property("Contents").addProperty("ADBE Vector Group"); //<- add Forme ELLIPSE
FormeGroup.name="Ellipse";

//// GLISSIERE /////////////////////////////////////////////////////////////////////////////////////////03
//FormeGroup.property("ADBE Vector Transform Group").property("ADBE Vector Position").setValue([100,100]); // <- set Value Position : "Calque" - "Contenu" - "Group"  - "Ellipse" - "Transformer Ellipse" - "Position"

var Ellipse = FormeGroup.property("ADBE Vectors Group").addProperty("ADBE Vector Shape - Ellipse");//<- add Ellipse
Ellipse.name="Trace Ellipse";

//TAILLE ELLIPSE
Ellipse.property("ADBE Vector Ellipse Size").setValue(TailleEllipse);

var FormeRemplissage = FormeGroup.property("ADBE Vectors Group").addProperty("ADBE Vector Graphic - Fill");//<- add Fond
FormeRemplissage.name="Fond Ellipse";

//COULEUR ELLIPSE
FormeRemplissage.property("ADBE Vector Fill Color").setValue(EllipseCouleur);

//CONTOUR ELLIPSE
var FormeContour = FormeGroup.property("ADBE Vectors Group").addProperty("ADBE Vector Graphic - Stroke");//<- add Contour
FormeContour.name="Contour Ellipse";

// ADD FORME
FormeTraceCalque=Comp.layers.addShape(); // Calque Forme
FormeTraceCalque.name="02";

FormeTrace = new Shape(); // Valeurs De La Forme
FormeTrace.closed = false ;
FormeTrace.vertices=[[-LargeurImage/4,HauteurImage/4],[LargeurImage/4,HauteurImage/4],[LargeurImage/4,-HauteurImage/4],[-LargeurImage/4,-HauteurImage/4]];
FormeTrace.closed = true ;
FormeTrace.name="Trace";

FormeTraceCalqueGroupeContent=FormeTraceCalque.property("Contents").addProperty("ADBE Vector Group");// <- add GROUPE
FormeTraceCalqueGroupeContent.name="+ GROUPE";

var FormeTraceCalqueContent = FormeTraceCalqueGroupeContent.property("Contents").addProperty("ADBE Vector Group"); //<- add Forme
FormeTraceCalqueContent.name="Forme";

Trace=FormeTraceCalqueContent.property("ADBE Vectors Group").addProperty("ADBE Vector Shape - Group"); // //<- add Trace
Trace.name=("Trace Forme");
//Nommer le trace "Tracé" de la forme ici

Trace.property("ADBE Vector Shape").setValue(FormeTrace);                                                  // Valeurs De La Forme

Couleur=FormeTraceCalqueContent.property("ADBE Vectors Group").addProperty("ADBE Vector Graphic - Fill");   //<- add Fond
Couleur.property("color").setValue(FormeCouleur);
Couleur.name=("Fond Forme");                                                          // Valeurs De La Forme

Contour=FormeTraceCalqueContent.property("ADBE Vectors Group").addProperty("ADBE Vector Graphic - Stroke"); // <- add Contour
Contour.property("ADBE Vector Stroke Color").setValue(ContourCouleur);                                     // Valeurs De La Forme
Contour.property("ADBE Vector Stroke Width").setValue(ContourLargeur); 
Contour.name=("Contour Forme");                                    // Valeurs De La Forme


//ADD NULL

// |* Val
Null01=Comp.layers.addNull();
Null01.name="01 | * Val";

Glissiere01=Null01.Effects.addProperty("ADBE Slider Control");
Glissiere01.name="01 | + GROUPE | Ellipse | * X";

//// GLISSIERE /////////////////////////////////////////////////////////////////////////////////////////04
Glissiere01.property("curseur").setValue(100); // VALEUR GLISSIERE *X // <- set Value

Glissiere02=Null01.Effects.addProperty("ADBE Slider Control");
Glissiere02.name="01 | + GROUPE | Ellipse | * Y";

//// GLISSIERE /////////////////////////////////////////////////////////////////////////////////////////05
Glissiere02.property("curseur").setValue(50); // VALEUR GLISSIERE *Y

Glissiere03=Null01.Effects.addProperty("ADBE Slider Control");
Glissiere03.name="01 | + GROUPE | Ellipse | * S";

//// GLISSIERE /////////////////////////////////////////////////////////////////////////////////////////06
Glissiere03.property("curseur").setValue(25); // VALEUR GLISSIERE *S


// |* Couleur
Null02=Comp.layers.addNull();
Null02.name="01 | * Couleur";
CouleurCase=Comp.layer(1).Effects.addProperty("ADBE Color Control");
CouleurCase.name="01 | + GROUPE | Ellipse | * Couleur";


/// DEFINIR LA VALEUR DE LA POSITION X D UNE FORME PAR UN PARAMETRE GLISSIERE

// VALEUR GLISSIERE
//GlissierePositionX = Null01.effect("01 | + GROUPE | Ellipse | * X").property("curseur").value;
// DEFINIR POSITION X ELLIPSE-01 PAR VALEUR GLISSIERE ( integrer l expression :  thisComp.layer("01 | * Val").effect("01 | + GROUPE | Ellipse | * X")("Curseur"); pour la coordonnees X de la forme)
//Value=[GlissierePositionX,100];


/// DEFINIR LA VALEUR DE LA POSITION X D UNE FORME PAR UN PARAMETRE GLISSIERE 

//ExpressionX="100";
//ExpressionY="Y=thisComp.layer("\"01 | * Val"\").effect("\"01 | + GROUPE | Ellipse | * Y"\")("\"Curseur"\");";
//ExpressionXY="[X,Y]";

//ExpressionValue=ExpressionX;

//+ExpressionY+ExpressionXY;

FormeGroup.property("ADBE Vector Transform Group").property("ADBE Vector Position").expression = "X=thisComp.layer(\"01 | * Val\").effect(\"01 | + GROUPE | Ellipse | * X\")(\"Curseur\");Y=thisComp.layer(\"01 | * Val\").effect(\"01 | + GROUPE | Ellipse | * Y\")(\"Curseur\");[X,Y]";








