Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[C++ SFML 3.0] Punkty na obwodzie kształtu składającego się z kwadratów

Ostatnio zmodyfikowano 2026-07-13 20:37
Autor Wiadomość
tBane
Temat założony przez niniejszego użytkownika
[C++ SFML 3.0] Punkty na obwodzie kształtu składającego się z kwadratów
» 2026-07-07 17:44:40
Cześć.
Piszę program w C++ SFML 3.0.
Potrzebuję uzyskać listę punktów obwodu kształtu.
Kształt składa sie z kwadratów opisanych przez std::vector<sf::IntRect> _rects.
Pomozecie ? :-)



C/C++
std::vector < sf::IntRect > rects;
std::vector < bool > filled;

int side = 16;
int countX = 16;
int countY = 16;

for( int y = 0; y < countY; y += 1 ) {
   
for( int x = 0; y < countX; x += 1 ) {
       
rects.push_back( sf::IntRect( sf::Vector2i( countX * side, countY * side ), sf::Vector2i( side, side ) ) );
       
filled.emplace_back( rand() % 2 == 0 );
   
}
}

std::vector < sf::Vector2i > points = getPoints( rects, filled );

for( int i = 0; i < rects.size(); i += 1 ) {
   
sf::RectangleShape rectShape( sf::Vector2f( rects[ i ].size ) );
   
rectShape.setFillColor(( filled[ i ] ) ? sf::Color::Green
        : sf::Color::Black );
   
rectShape.setPosition( sf::Vector2f( rects[ i ].position ) );
   
Main::render_window->draw( rectShape );
}
P-184283
tBane
Temat założony przez niniejszego użytkownika
» 2026-07-07 18:04:01
A może by tak sortować punkty po y,x i jeżeli dodaje się kwadrat i zawiera już istniejące punkty to te punkty kasować? Ale jak potem uporządkować punkty, żeby można było z ich pomoca utworzyć sf::ConvexShape?
P-184284
skovv
» 2026-07-09 20:17:01
kształt masz na myśli ten zielony zestaw kwadracików? Punkty mają być tylko po zewnętrznej stronie(4 punkty "po rogach") czy po każdej linii od skrętu? Ja bym zrobił tak że "sprawdzasz" wszystkie kratki tego obiektu, sprawdzał czy jest np ostatnim bloczkiem z lewej i góry(więc narożnym) więc na tym rogu daje krope. itp
P-184285
tBane
Temat założony przez niniejszego użytkownika
» 2026-07-13 20:37:39
Dobra... Jak wymyślę ten algorytm to go tu wrzucę :-)
P-184288
« 1 »
  Strona 1 z 1