powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Line 360
17 сообщений из 17, страница 1 из 1
Line 360
    #33566378
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите, пожалуйста
Как заставить линию описать круг ?
...
Рейтинг: 0 / 0
Line 360
    #33566406
Фотография SmeL_md
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А объект Shape1.Shape = 3 не потходит?
...
Рейтинг: 0 / 0
Line 360
    #33566417
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shape не прокатит.
Надо типа чтобы линия (перерисовываясь на форме) пробежала по кругу от 0 до 360.
...
Рейтинг: 0 / 0
Line 360
    #33566825
Melkiades
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что значит линия пробежала? Пробежать может точка.
...
Рейтинг: 0 / 0
Line 360
    #33566935
Дурак
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Один конец линии стопоришь, другим концом описываешь окружность в цикле.
...
Рейтинг: 0 / 0
Line 360
    #33567020
Дурак
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Примерно так.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
Dim i As Long
Dim j As Long

Dim r As Long
Dim a As Long
Dim b As Long

' центр
a =  500 
b =  500 

' радиус
r =  500 

' уравнение окружности (x - a)2 + (y - b)2 = r2

' нижняя часть часть окружности
For i =  0  To  1000 
j = Sqr(r * r - (i - a) * (i - a)) + b
Me.Line ( 500 ,  500 )-(i, j)
Next i


' верхняя  часть часть окружности
For i =  0  To  1000 
j = -Sqr(r * r - (i - a) * (i - a)) + b
Me.Line ( 500 ,  500 )-(i, j)
Next i
...
Рейтинг: 0 / 0
Line 360
    #33567029
Дурак
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
P.S.
Замена типа int на, скажем, double и пробежка с шагом 0.1 даст значительно большую точность...
...
Рейтинг: 0 / 0
Line 360
    #33567158
Дурак
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Последний вариант
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
Dim i As Double
Dim j As Double

Dim r As Long
Dim a As Long
Dim b As Long

' центр
a =  500 
b =  500 

' радиус
r =  500 

Dim s As String

' уравнение окружности (x - a)2 + (y - b)2 = r2

' нижняя часть часть окружности
For i =  1000  To  0  Step - 0 . 05 
j = Sqr(r * r - (i - a) * (i - a)) + b
Me.Line (a, b)-(i, j)
Me.Line (a, b)-(i, j), vbButtonFace
Next i


' верхняя  часть часть окружности
For i =  0  To  1000  Step  0 . 05 
j = -Sqr(r * r - (i - a) * (i - a)) + b
Me.Line (a, b)-(i, j)
Me.Line (a, b)-(i, j), vbButtonFace
Next i

...
Рейтинг: 0 / 0
Line 360
    #33569110
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не понимаю.
Объясни, пожалуйста, как мне сделать так чтобы на форме элемент Line одной стороной был в одной точке, а другой стороной описывал радиус?
...
Рейтинг: 0 / 0
Line 360
    #33569879
Дурак
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
timtimНе понимаю.
Объясни, пожалуйста, как мне сделать так чтобы на форме элемент Line одной стороной был в одной точке, а другой стороной описывал радиус?

Вставь мой код в пустой проект, скомпилируй и запусти.

После этого запости сюда, что не так, и что именно должно быть.

А так это спор слепого с глухим о качестве видеоклипа...
...
Рейтинг: 0 / 0
Line 360
    #33571964
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторчто именно должно быть
Уважаемый!
смысл таков:
Надо чтобы не круг рисовался, а чтобы линия повернула в указанный азимут и осталась там. И линию запустить в цикле от 0 до 360, чтоб она описала круг с некоторой задержкой. (типа компаса)
...
Рейтинг: 0 / 0
Line 360
    #33572558
Дурак
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
timtim авторчто именно должно быть
Уважаемый!
смысл таков:
Надо чтобы не круг рисовался, а чтобы линия повернула в указанный азимут и осталась там. И линию запустить в цикле от 0 до 360, чтоб она описала круг с некоторой задержкой. (типа компаса)

А - а, блин... Надо было сразу про компас написать...

Теперь понятно.
...
Рейтинг: 0 / 0
Line 360
    #33572583
Дурак
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Первое что пришло в голову .

Во-всяком случае, можно копать в этом направлении...

С задержкой придумай че-нить сам :-).

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
Dim i As Double
Dim j As Double
Dim j1 As Double
Dim i1 As Double

Dim r As Long
Dim a As Long
Dim b As Long
Dim ii As Long

' центр
a =  500 
b =  500 

' радиус
r =  500 

Dim s As String

' уравнение окружности (x - a)2 + (y - b)2 = r2

' нижняя часть часть окружности
For ii =  1  To  10 
i1 =  0 
For i =  1000  To  0  Step - 0 . 05 
i1 = i1 +  0 . 05 
j = Sqr(r * r - (i - a) * (i - a)) + b
j1 = -Sqr(r * r - (i - a) * (i - a)) + b
Me.Line (a, b)-(i, j)
Me.Line (a, b)-(i1, j1)
Me.Line (a, b)-(i, j), vbButtonFace
Me.Line (a, b)-(i1, j1), vbButtonFace
Next i
Next ii
...
Рейтинг: 0 / 0
Line 360
    #33575104
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
То что нужно большое спасибо!
...
Рейтинг: 0 / 0
Line 360
    #33581399
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не получается сделать линию одной длины.
Как рисовать круг из определенной точки независимо от размеров формы?
HELP!
...
Рейтинг: 0 / 0
Line 360
    #33581406
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не копается.
...
Рейтинг: 0 / 0
Line 360
    #33586923
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Help Me
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Line 360
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]