J'utilise le GPC Polygon Clipping lib et je souhaite créer un polygone par programmation. Je ne vois que du code pour en créer un à partir d'un fichier. Comment puis-je faire l'initialisation dans mon code?Initialisation de Polygone GPC
Répondre
Lisez mieux à partir de votre lien, trouvez la page doc et lisez; en particulier gpc_add_contour
fonction est probablement ce dont vous avez besoin. Le gpc_vertex_list struct tient un pointeur vers gpc_vertex-s et le nombre de sommets, et est ce que vous devez remplir. Comme
gpc_polygon p = {0, NULL, NULL}; // "void" polygon
gpc_vertex v[] = { {0.0, 0.0}, {10.0, 0.}, {10.0, 10.10}, {0.0, 10.0} };
gpc_vertex_list vl = {
4, v
};
//...
gpc_add_contour(&p, &vl, 0);
Le doc est pas trop clair, mais vous pouvez en déduire l'utilisation et de test (try-error loops) est votre ami (je n'installerai pas gpc pour le faire de toute façon, donc mon code pourrait se tromper). L'extrait de code proposé doit créer un carré. Plusieurs autres gpc_add_countour
avec le même & p mais une liste de vertex différente peut être utilisée pour créer un polygone plus complexe, et bien sûr vl peut être changé pour avoir au début un polygone plus complexe. Le troisième paramètre doit être 1 si vous voulez que le contour défini soit un "trou" dans le polygone courant (p).
gpc_polygon subject;
int w = 100, h = 100, verticesCnt = 30;
//setup a gpc_polygon container and fill it with random vertices ...
subject.num_contours = 1;
subject.hole = 0;
subject.contour = new gpc_vertex_list; //ie just a single polygon here
subject.contour->num_vertices = verticesCnt;
subject.contour->vertex = new gpc_vertex [verticesCnt];
for (i = 0; i < verticesCnt; i++){
subject.contour[0].vertex[i].x = random(w);
subject.contour[0].vertex[i].y = random(h);
}
//do stuff with it here, then ...
gpc_free_polygon(&subject);
- 1. Forme de polygone usercontrol
- 2. Google maps Question de polygone
- 3. Initialisation de NSArrayController
- 4. initialisation de matrice
- 5. Initialisation de la structure
- 6. Initialisation de l'exécutable
- 7. initialisation de la variable
- 8. initialisation de tableau Scala
- 9. Initialisation de tableau dynamique
- 10. polygone à raster GIS
- 11. Trou dans un polygone
- 12. Polygone 3D dans xaml
- 13. dessin polygone Concave
- 14. Initialisation Django
- 15. CLLocationDegrees initialisation
- 16. lcd initialisation
- 17. Algorithme de remplissage d'image de polygone
- 18. Initialisation de pointeurs en C++
- 19. Initialisation d'un vecteur de vecteurs?
- 20. Initialisation de tableaux en C
- 21. initialisation de la matrice C++
- 22. Initialisation de référence en C++
- 23. printemps initialisation de servlets mvc
- 24. Initialisation de Log4J avec Spring?
- 25. Initialisation des variables de tableau
- 26. initialisation de variable statique java
- 27. C++ initialisation de valeur ENUM
- 28. Google maps api - polygone mouseover
- 29. distance d'un point dans un polygone à un bord de polygone
- 30. Déterminer l'ordre du polygone 3D