bugün
- oruç açı anlamak içinse açlar neden oruç tutar11
- yazılımcı erkeklerin yakışıklı olmaması7
- tefsiriyle okusak ülkenin yarısı dinden çıkar11
- kizlarsoruyor com6
- cd devrinin bitmesi16
- akp bitince ne olacak22
- kucak dansı yapmayı bilen kız sayısının azalması6
- macron koşacak diye park kapatan akepe31
- kuranı kerim meali6
- götün sürekli kanaması5
- aleti kestirip geneleve düşmek2
- royall stars4
- avm otoparkında uygunsuz çifte bağıran kadın21
- arkadaşlar yoruldum2
- çocuk istememe nedenleri5
- fusya semsiyeli yabanci17
- aşırı çıplaklığın rahatsız edici olması34
- herzevekil5
- sözlük hatunlarının nefsimi kabartması sorunsalı11
- arkadaşlar lütfen bilgi içerikli entry girelim12
- çirkin adam güzel kadın aşkı4
- erkekten ev işi bekleyen kadın2
- ben buraya yargılanmaya değil yargılamaya geldim3
- öğretmen olmak5
- no 12
- izlanda başbakanı'nın külliye'ye hayran kalması2
- 8 temmuz 2026 ekrem imamoğlu savunması4
- das kapital i yırtan kız2
- krediyle kurban kesen müslüman2
- ulu sözlük team3
- rusya'nın dizel yakıt ihracatını yasaklaması2
- bezelye yemeği9
- sikmek icin entry ni beğendi7
- aşık olunan ünlüler2
- gaddar kerim in mesleği nedir4
- akrabalarla tüm alakayı kesmek5
- güzel zannedilen kadınların sıradan olmaları9
- uzun zamandır yapmadığınız şeyler10
- araba sevdası2
- bedenen yorulmak mı beynen yorulmak mı4
- toyota corolla3
- otel odasında ölü bulunmak12
- alaçatı da hayır lokmasını talan eden teyzeler8
- ölümün en iyi tanımı17
- ekşi sözlükteki başlıkları uludağ sözlükte görmek7
- ilahi bir gücün sizi frenlediği düşüncesi7
- borç olmadan kira olmadan iyi olan para2
- kol saati takmanın anlamsızlığı15
- inte suri hur2
- ciguli kral20
matematiği sular seller gibi biliyor kerata, 2 boyutlu eğik atış hareketini ağırlık, hız, açı, boyut verileriyle simüle eden programı bir dk da kağıda döktü.
görsel
https://streamable.com/t8uc6z
#include <SFML/Graphics.hpp>
#include <cmath>
#include <sstream>
#include <iostream>
const float GRAVITY = 981.0f; // Yer çekimi ivmesi (pixel/s^2)
const float FLOOR_Y = 540.0f; // Zemin yüksekliği
const float WINDOW_WIDTH = 1920.0f; // Pencere genişliği
const float WINDOW_HEIGHT = 1080.0f; // Pencere yüksekliği
int main()
{
sf::RenderWindow window(sf::VideoMode(WINDOW_WIDTH, WINDOW_HEIGHT), "Projectile Motion");
sf::Font font;
if (!font.loadFromFile("arial.ttf"))
{
return -1;
}
sf::Text infoText;
infoText.setFont(font);
infoText.setCharacterSize(24);
infoText.setFillColor(sf::Color::White);
infoText.setPosition(10, 10);
// Başlangıç hızı, açı, kütle ve çap
float speed;
float angle;
float mass;
float diameter;
std::cout << "Enter initial speed (pixels/second): ";
std::cin >> speed;
std::cout << "Enter initial angle (degrees): ";
std::cin >> angle;
std::cout << "Enter mass of the ball (kg): ";
std::cin >> mass;
std::cout << "Enter diameter of the ball (pixels): ";
std::cin >> diameter;
// Açıyı radyana çevirme
angle = angle * 3.14159 / 180;
// Topun yarıçapını ayarlama
float radius = diameter / 2.0f;
// Kırmızı topun tanımı
sf::CircleShape redCircle(radius); // Yarıçapı kullan
redCircle.setFillColor(sf::Color::Red);
redCircle.setPosition(100.0f, FLOOR_Y - radius * 2); // Başlangıçta yukarıda
float xVelocity = speed * std::cos(angle); // Yatay hız
float yVelocity = -speed * std::sin(angle); // Dikey hız (negatif çünkü yukarı doğru)
sf::Clock clock;
bool launched = true;
// Zemin ve gökyüzü
sf::RectangleShape ground(sf::Vector2f(WINDOW_WIDTH, WINDOW_HEIGHT - FLOOR_Y));
ground.setFillColor(sf::Color::Green);
ground.setPosition(0, FLOOR_Y);
sf::RectangleShape sky(sf::Vector2f(WINDOW_WIDTH, FLOOR_Y));
sky.setFillColor(sf::Color(135, 206, 235));
while (window.isOpen())
{
sf::Event event;
while (window.pollEvent(event))
{
if (event.type == sf::Event::Closed)
window.close();
}
float dt = clock.restart().asSeconds(); // Zaman adımı
// Eğik atış hareketi
if (launched)
{
// Kütle çekimi kuvvetini hesaplama
float gravityForce = mass * (GRAVITY / 1000.0f); // kg cinsinden yer çekimi kuvveti
// Dikey hızı güncelle
yVelocity += gravityForce * dt; // Dikey hız artar (top yere doğru hareket eder)
// Topun hareket ettirilmesi
redCircle.move(xVelocity * dt, yVelocity * dt);
// Top zemine çarptığında
if (redCircle.getPosition().y >= FLOOR_Y - radius * 2)
{
redCircle.setPosition(redCircle.getPosition().x, FLOOR_Y - radius * 2);
launched = false; // Fırlatma sona erer
}
}
// Hız ve açıyı güncelleme
float speedMagnitude = std::sqrt(xVelocity * xVelocity + yVelocity * yVelocity);
std::stringstream ss;
ss << "Speed: " << speedMagnitude << " px/s\n";
ss << "X Velocity: " << xVelocity << " px/s\n";
ss << "Y Velocity: " << yVelocity << " px/s\n";
ss << "Mass: " << mass << " kg\n";
ss << "Diameter: " << diameter << " px\n";
infoText.setString(ss.str());
// Ekranı güncelleme
window.clear();
window.draw(sky);
window.draw(ground);
window.draw(redCircle);
window.draw(infoText);
window.display();
}
return 0;
}
görsel
https://streamable.com/t8uc6z
#include <SFML/Graphics.hpp>
#include <cmath>
#include <sstream>
#include <iostream>
const float GRAVITY = 981.0f; // Yer çekimi ivmesi (pixel/s^2)
const float FLOOR_Y = 540.0f; // Zemin yüksekliği
const float WINDOW_WIDTH = 1920.0f; // Pencere genişliği
const float WINDOW_HEIGHT = 1080.0f; // Pencere yüksekliği
int main()
{
sf::RenderWindow window(sf::VideoMode(WINDOW_WIDTH, WINDOW_HEIGHT), "Projectile Motion");
sf::Font font;
if (!font.loadFromFile("arial.ttf"))
{
return -1;
}
sf::Text infoText;
infoText.setFont(font);
infoText.setCharacterSize(24);
infoText.setFillColor(sf::Color::White);
infoText.setPosition(10, 10);
// Başlangıç hızı, açı, kütle ve çap
float speed;
float angle;
float mass;
float diameter;
std::cout << "Enter initial speed (pixels/second): ";
std::cin >> speed;
std::cout << "Enter initial angle (degrees): ";
std::cin >> angle;
std::cout << "Enter mass of the ball (kg): ";
std::cin >> mass;
std::cout << "Enter diameter of the ball (pixels): ";
std::cin >> diameter;
// Açıyı radyana çevirme
angle = angle * 3.14159 / 180;
// Topun yarıçapını ayarlama
float radius = diameter / 2.0f;
// Kırmızı topun tanımı
sf::CircleShape redCircle(radius); // Yarıçapı kullan
redCircle.setFillColor(sf::Color::Red);
redCircle.setPosition(100.0f, FLOOR_Y - radius * 2); // Başlangıçta yukarıda
float xVelocity = speed * std::cos(angle); // Yatay hız
float yVelocity = -speed * std::sin(angle); // Dikey hız (negatif çünkü yukarı doğru)
sf::Clock clock;
bool launched = true;
// Zemin ve gökyüzü
sf::RectangleShape ground(sf::Vector2f(WINDOW_WIDTH, WINDOW_HEIGHT - FLOOR_Y));
ground.setFillColor(sf::Color::Green);
ground.setPosition(0, FLOOR_Y);
sf::RectangleShape sky(sf::Vector2f(WINDOW_WIDTH, FLOOR_Y));
sky.setFillColor(sf::Color(135, 206, 235));
while (window.isOpen())
{
sf::Event event;
while (window.pollEvent(event))
{
if (event.type == sf::Event::Closed)
window.close();
}
float dt = clock.restart().asSeconds(); // Zaman adımı
// Eğik atış hareketi
if (launched)
{
// Kütle çekimi kuvvetini hesaplama
float gravityForce = mass * (GRAVITY / 1000.0f); // kg cinsinden yer çekimi kuvveti
// Dikey hızı güncelle
yVelocity += gravityForce * dt; // Dikey hız artar (top yere doğru hareket eder)
// Topun hareket ettirilmesi
redCircle.move(xVelocity * dt, yVelocity * dt);
// Top zemine çarptığında
if (redCircle.getPosition().y >= FLOOR_Y - radius * 2)
{
redCircle.setPosition(redCircle.getPosition().x, FLOOR_Y - radius * 2);
launched = false; // Fırlatma sona erer
}
}
// Hız ve açıyı güncelleme
float speedMagnitude = std::sqrt(xVelocity * xVelocity + yVelocity * yVelocity);
std::stringstream ss;
ss << "Speed: " << speedMagnitude << " px/s\n";
ss << "X Velocity: " << xVelocity << " px/s\n";
ss << "Y Velocity: " << yVelocity << " px/s\n";
ss << "Mass: " << mass << " kg\n";
ss << "Diameter: " << diameter << " px\n";
infoText.setString(ss.str());
// Ekranı güncelleme
window.clear();
window.draw(sky);
window.draw(ground);
window.draw(redCircle);
window.draw(infoText);
window.display();
}
return 0;
}
Gündemdeki Haberler
Güncel Önemli Başlıklar