Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/16: Рейтинг темы: голосов - 16, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 14.12.2010
Сообщений: 20

Построение графика в полярных координатах

04.08.2011, 19:08. Показов 3369. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите, пожалуйста, как можно реализовать построение графика в полярных координатах в элементе PICTURE, если задан массив комплексных данных A(+-a+-bi) или значения амплитуды |A| и значения угла arctg(im(A)/re(A)
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
    Dim X() As Complex
    Dim x0 As Single, y0 As Single, R As Single, FI As Single
    Dim xi(1) As Single, yi(1) As Single
    Dim I As Long
    
    X = OpenDataToComplex('tf.dat')
    Me.Show
    On Error Resume Next
    With Pic
        x0 = .ScaleWidth / 2
        y0 = .ScaleHeight / 2
        For I = 1 To UBound(X)
            R = C.Rho(X(I))
            FI = C.Arg(X(I))
            xi(1) = x0 + R * Cos(FI) * 1000
            yi(1) = y0 - R * Sin(FI) * 1000
            Pic.PSet (xi(1), yi(1)), vbBlue
            Pic.Line -(xi(0), yi(0)), vbBlue
            xi(0) = xi(1)
            yi(0) = yi(1)
        Next I
    End With
но получил беспорядочное расположение линий.
Мне нужно, чтобы график был похож на годограф Найквиста

Что мне нужно изменить???

Спасибо.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.08.2011, 19:08
Ответы с готовыми решениями:

Построение математических кривых, заданных уравнениями в полярных координатах
Построение математических кривых, заданных уравнениями в полярных координатах. помогите пожалуйста, не могу разобраться

График в полярных координатах на форме координатной сеткой
Здравствуйте Дело вот в чем, нарисовал координатную сетку, код представлен ниже, теперь надо нарисовать график в полярных координатах,...

Построение графика в полярных координатах
Пытаюсь построить график в полярных координатах, но рисует он что-то не понятное... Помогите исправить Рисую в ОpenGL... procedure...

2
Comanche
04.08.2011, 19:43
Что такое OpenDataToComplex? И где, блин, описание UDT Complex?!
Чё за обгрызок кода ты сюда выложил?
0 / 0 / 0
Регистрация: 14.12.2010
Сообщений: 20
05.08.2011, 06:24  [ТС]
Функция OpenDataToComplex осуществляет ввод файла комплексных данных A+Bi в программу
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Public Function OpenDataToComplex(ByVal FileName As String) As Variant
Dim Fnum As Integer
Dim iCount As Long, lLen As Long
Dim lString As String
Dim byBuffer() As Complex
 
    iCount = 0
    Fnum = FreeFile
    Open FileName For Input Access Read Lock Write As #Fnum
    Do While Not EOF(1)
        iCount = iCount + 1
        Line Input #Fnum, lString
        Do While InStr('0123456789.+- ', Left$(lString, 1)) = 0
            lString = Mid$(lString, 2, Len(lString) - 1)
        Loop
        ReDim Preserve byBuffer(1 To iCount) As Complex
        lLen = InStr(lString, ';')
        byBuffer(iCount).RE = CDbl(Val(Left$(lString, lLen)))
        byBuffer(iCount).IM = CDbl(Val(Right$(lString, Len(lString) - lLen)))
    Loop
    Close #Fnum
    OpenDataToComplex = byBuffer
End Function
Класс С осуществляет работу с комплексными числами. Например, создание комплексного числа и получение модуля и аргумента функции:
Visual Basic
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
Public Type Complex
    Re As Double
    Im As Double
End Type
 
Public Function Cmplx(ByVal Real As Double, ByVal Imag As Double) As Complex
    Cmplx.Re = Real
    Cmplx.Im = Imag
End Function
 
Public Function Polar(ByVal Rho As Double, ByVal Arg As Double) As Complex
    Polar.Re = Rho * Cos(Arg)
    Polar.Im = Rho * Sin(Arg)
End Function
 
Public Property Get Rho(ByRef X As Complex) As Double
    If X.Im = 0 Then
        Rho = Abs(X.Re)
    ElseIf Abs(X.Re) < Abs(X.Im) Then
        Rho = Abs(X.Im) * Sqr(1 + Square(X.Re / X.Im))
    Else
        Rho = Abs(X.Re) * Sqr(1 + Square(X.Im / X.Re))
    End If
End Property
 
Public Property Get Arg(ByRef X As Complex) As Double
Dim A As Double, piDiv2 As Double
 
    piDiv2 = 2 * Atn(1)   'pi/2
    Select Case X.Re
        Case Is > 0
            If (X.Im = 0) Then
                A = 0
            Else
                A = Atn(X.Im / X.Re)
            End If
        Case 0
            Select Case X.Im
                Case Is > 0: A = piDiv2
                Case 0:      A = 0
                Case Is < 0: A = -piDiv2
            End Select
        Case Is < 0
            Select Case X.Im
                Case Is > 0: A = Atn(X.Im / X.Re) + 2 * piDiv2
                Case 0:      A = 2 * piDiv2
                Case Is < 0: A = Atn(X.Im / X.Re) - 2 * piDiv2
            End Select
    End Select
    Arg = A
End Property
Файл данных tf.dat предсталяет собой частотную передаточную функцию двух сигналов: отношение взаимного спектра к автоспектру входного сигнала. Мне нужно его представить в виде частотного годографа Найквиста.

Как это получить?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.08.2011, 06:24
Помогаю со студенческими работами здесь

Построение двумерного графика в полярных координатах
нужно построить изображение данной кривой: pi=a*(1-cos(fi)) pi, fi-полярные координаты, a-константа, вводимая пользователем с клавиатуры....

Построение графика функции в полярных координатах
Нужно нарисовать график функции \rho = 5 \cos(\phi) ( \rho , \phi - полярные координаты). Первый раз сталкиваюсь с подобной задачей....

Построение графика функции (Спираль Ферма) в полярных координатах
Хола амигос! Разработать программу для построения графика функции в полярных координатах. Спираль Ферма: \rho^2 = a^2\varphi

Построение графика в полярных координатах "Диаграмма направленности"
ребят, помогите пожалуйста построить график диаграммы направленности цилиндрической спиральной антенны. все сделал в зедграфе, по его...

Построение графиков в полярных координатах
Доброго времени суток! Решая задачу по определению характеристики направленности антенны, я не могу построить график в полярных...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru