Mail.ru
Почта
Мой Мир
Одноклассники
ВКонтакте
Игры
Знакомства
Новости
Календарь
Облако
Заметки
Все проекты
Все проекты
выход
Регистрация
Вход
Категории
Все вопросы проекта
Компьютеры, Интернет
Темы для взрослых
Авто, Мото
Красота и Здоровье
Товары и Услуги
Бизнес, Финансы
Наука, Техника, Языки
Философия, Непознанное
Города и Страны
Образование
Фотография, Видеосъемка
Гороскопы, Магия, Гадания
Общество, Политика, СМИ
Юридическая консультация
Досуг, Развлечения
Путешествия, Туризм
Юмор
Еда, Кулинария
Работа, Карьера
О проектах Mail.ru
Животные, Растения
Семья, Дом, Дети
Другое
Знакомства, Любовь, Отношения
Спорт
Золотой фонд
Искусство и Культура
Стиль, Мода, Звезды
Полный список
Спросить
Лидеры
Поиск по вопросам
Ответы Mail.ru
Программирование
Android
C/C++
C#
iOS
Java
JavaScript
jQuery
SQL
Perl
PHP
Python
Веб-дизайн
Верстка, CSS, HTML, SVG
Системное администрирование
Другие языки и технологии
Вопросы - лидеры.
Как получить html шаблон и на каком сайте?
1 ставка
Написать макрос Word, меняющий раскладку
1 ставка
Написать макрос Word
1 ставка
Зажатие кнопки геймпада в Unity.
1 ставка
Самые лёгкие программы для создания 3D моделей
1 ставка
Лидеры категории
Лена-пена
Искусственный Интеллект
М.И.
Искусственный Интеллект
Y.Nine
Искусственный Интеллект
•••
Java swing почему чернай шар не вращается вокруг краснаго а они вразаются синхронного?
12124214 12424
Ученик
(92), открыт
2 недели назад
полний код здес
https://github.com/MarkVassaev06/Turn/blob/master/src/Turn.java
Почему Thread thread = new Thread(() -> {
// double startX = circleComponent.getX() - 10;
// double startY = circleComponent.getY() - 10;
double dtA = 0.01;
while (true) {
for (CircleComponent a : BodyMap.keySet()) {
double startX = 500 + a.getRadiusOfCircle() * Math.cos(a.getSpeed() * dtA);
double startY = 500 + a.getRadiusOfCircle() * Math.sin(a.getSpeed() * dtA);
a.setXY(startX, startY);
for (CircleComponent Satellite : BodyMap.get(a)) {
double X = startX + 100 * Math.cos(Satellite.getSpeed() * dtA);
double Y = startY + 100 * Math.sin(Satellite.getSpeed() * dtA);
Satellite.setXY(X, Y);
}
}
dtA += 0.01;
// circleComponent.setXY(startX,startY);
// startX = + RadiusOfCircle * Math.cos(dtA);
// startY = 500 + RadiusOfCircle * Math.sin(dtA);
dtA = dtA + 0.01;
repaint();
try {
Thread.sleep(10);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
}
});
thread.start(); если убрать вложенный цикл for они не вразаются а если оставить они синхронного вращаются
0 ответов
Похожие вопросы
https://github.com/MarkVassaev06/Turn/blob/master/src/Turn.java
Почему Thread thread = new Thread(() -> {
// double startX = circleComponent.getX() - 10;
// double startY = circleComponent.getY() - 10;
double dtA = 0.01;
while (true) {
for (CircleComponent a : BodyMap.keySet()) {
double startX = 500 + a.getRadiusOfCircle() * Math.cos(a.getSpeed() * dtA);
double startY = 500 + a.getRadiusOfCircle() * Math.sin(a.getSpeed() * dtA);
a.setXY(startX, startY);
for (CircleComponent Satellite : BodyMap.get(a)) {
double X = startX + 100 * Math.cos(Satellite.getSpeed() * dtA);
double Y = startY + 100 * Math.sin(Satellite.getSpeed() * dtA);
Satellite.setXY(X, Y);
}
}
dtA += 0.01;
// circleComponent.setXY(startX,startY);
// startX = + RadiusOfCircle * Math.cos(dtA);
// startY = 500 + RadiusOfCircle * Math.sin(dtA);
dtA = dtA + 0.01;
repaint();
try {
Thread.sleep(10);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
}
});
thread.start(); если убрать вложенный цикл for они не вразаются а если оставить они синхронного вращаются