Форум программистов, компьютерный форум, киберфорум
MathCAD
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/13: Рейтинг темы: голосов - 13, средняя оценка - 4.69
0 / 0 / 0
Регистрация: 29.01.2018
Сообщений: 28

Построить график функции в MathCAD используя код в Visual Basic

31.01.2018, 21:49. Показов 2754. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребят подскажите пожалуйста.
Я не могу сообразить как связать библиотеки Visual Basic с Mathcad, суть такова, что мне нужно имея алгоритм в Visual Basic перенести результат подсчета в Mathcad в виде графика, так вот не могу понять как написать такую строку кода в Visual Basic. Может знает кто как это сделать?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.01.2018, 21:49
Ответы с готовыми решениями:

как используя график поверхности построить тело mathcad
Как используя график поверхности построить тело mathcad в универе дали задание а я пропустил ту пару когда это объясняли. Задание №3,...

Построить график функции f(x,y,z) в MathCAD
Всем доброго времени суток! Есть довольно громоздкая функция: f(x,y,z) =...

Построить график функции mathcad prime 2.0
Дано трансцендентное уравнение. Найти его решение и осуществить проверку методом подстановки. F(x) = sin(x) - cos(x^2) + 1/4 = 0 ...

14
Модератор
Эксперт по математике/физике
 Аватар для VSI
5291 / 4073 / 1392
Регистрация: 30.07.2012
Сообщений: 12,495
01.02.2018, 07:54
Иванннн1995, результаты расчетов в VBA сохраняете во внешний файл (текстовый или Excel), а потом эти результаты считываете в Mathcad'е и строите свой график...
0
 Аватар для Krasme
7248 / 5101 / 2151
Регистрация: 02.02.2014
Сообщений: 13,464
01.02.2018, 11:01
попробуйте по аналогии
Передать данные в Mathcad
1
0 / 0 / 0
Регистрация: 29.01.2018
Сообщений: 28
01.02.2018, 20:33  [ТС]
VSI, не мог бы ты пожалуйста разжевать, а то я совсем не шарю о чем ты, если не сложно объясни по подробней пожалуйста!((
0
Модератор
Эксперт по математике/физике
 Аватар для VSI
5291 / 4073 / 1392
Регистрация: 30.07.2012
Сообщений: 12,495
02.02.2018, 13:18
Цитата Сообщение от Иванннн1995 Посмотреть сообщение
...разжевать, а то я совсем не шарю о чем ты...
Вы спрашивали...
Цитата Сообщение от Иванннн1995 Посмотреть сообщение
мне нужно имея алгоритм в Visual Basic перенести результат подсчета в Mathcad в виде графика
Ваши действия:
1) имея алгоритм в Visual Basic считаете по своему алгоритму все, что Вам надо посчитать, чтобы построить график...
2) перенести результат подсчета в Mathcad результаты своих расчетов (смотри пункт 1) сохраняете в виде ФАЙЛА (текстового или файла Excel) на диске...
3) в виде графика потом из Mathcad'а СЧИТЫВАЕТЕ свои, сохраненные в виде файла (смотри пункт 2), данные и строите по ним свой ГРАФИК уже в Mathcad'е...
Как-то так.
0
100 / 95 / 23
Регистрация: 30.08.2015
Сообщений: 457
03.02.2018, 23:18
Лучший ответ Сообщение было отмечено Иванннн1995 как решение

Решение

Иванннн1995, откройте папку C:\Program Files (x86)\Mathcad\Mathcad 15\Resource Center\RU\qsheet\samples\vbasic

там пример с исходниками
1
0 / 0 / 0
Регистрация: 29.01.2018
Сообщений: 28
09.02.2018, 20:57  [ТС]
densy, подскажи пожалуйста, я связал библиотеки, но теперь проблема следующая, после написания цикла FOR Visual Basic, я получаю массив данных для переменной X, далее пытаюсь вывести эти данные в Маткад и они не выводятся, выводится только последнее значение массива данных. Подскажи плиз что делать??
0
 Аватар для Krasme
7248 / 5101 / 2151
Регистрация: 02.02.2014
Сообщений: 13,464
09.02.2018, 22:22
нам ваш код не виден...
0
100 / 95 / 23
Регистрация: 30.08.2015
Сообщений: 457
10.02.2018, 00:08
Иванннн1995, у меня нет Visual Basic, нашел пример вроде все верно
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
Dim mcdObject As New Object 
Dim mcdPointsMatrix As Mathcad.MatrixValue 
Dim mcdMatrixNew As Mathcad.MatrixValue 
 
//создают COM объект. 
mcdMatrixNew = CType(Interaction.CreateObject("Mathcad.MatrixValue"), Mathcad.MatrixValue) 
 
Try 
mcdPointsMatrix = CType(mcdWorkSheet.GetValue("Points"), Mathcad.MatrixValue) 
bMatrixExists = True 
Catch ex As Exception 
bMatrixExists = False 
end Try 
For i As Integer = 600 - 1 To 0 Step -1 
For j As Integer = 18 To 0 Step -1 
If bMatrixExists = False Then 
mcdMatrixNew.SetElement(i, j, 1) 
Else 
mcdPointsMatrix.SetElement(i, j, 1) 
End If 
Next 
Next 
If bMatrixExists = False Then 
 
//передают матрицу переменной Points 
mcdWorkSheet.SetValue("Points", mcdMatrixNew) 
Else 
mcdWorkSheet.SetValue("Points", mcdPointsMatrix) 
End If
Добавлено через 1 минуту
вариант с vb.net/C# лучший
0
0 / 0 / 0
Регистрация: 29.01.2018
Сообщений: 28
11.02.2018, 13:24  [ТС]
densy, у меня ваш код не сработал((( пишет, что много не объявленных переменных, а так же нету ссылки на файл Маткада в котором будут меняться переменные, не могли бы вы подредактировать код пожалуйста, а то я хз как быть((
0
100 / 95 / 23
Регистрация: 30.08.2015
Сообщений: 457
11.02.2018, 19:11
Лучший ответ Сообщение было отмечено Иванннн1995 как решение

Решение



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
Dim MC As Mathcad.Application
Dim WK As Mathcad.Worksheets
Dim WS As Mathcad.Worksheet
Dim mcdMatrixNew As Mathcad.MatrixValue
'Dim values(4, 4) As Double
 
Private Sub CommandButton1_Click() ' запустить маткад открыть файл
Set MC = CreateObject("Mathcad.Application")
'Set MC = New Mathcad.Application
Set WK = MC.Worksheets
Set WS = WK.Open("C:\путь\1.xmcd")
MC.Visible = True
 
End Sub
 
Private Sub CommandButton3_Click() ' передать матрицу
'Set mcdMatrixNew = CType(Interaction.CreateObject("Mathcad.MatrixValue"), Mathcad.MatrixValue)
Set mcdMatrixNew = CreateObject("Mathcad.MatrixValue")
Dim i As Integer
Dim j As Integer
For i = 0 To 4 Step 1
For j = 0 To 4 Step 1
'values(i, j) = 1
mcdMatrixNew.SetElement i, j, 1
Next
Next
WS.SetValue "Points", mcdMatrixNew
'WS.SetValue("Points", values)
WS.Recalculate
End Sub
 
Private Sub CommandButton2_Click() ' выход без сохранения
WS.Close (Mathcad.MCSaveOption.mcDiscardChanges)
System.Runtime.InteropServices.Marshal.ReleaseComObject (WK)
System.Runtime.InteropServices.Marshal.ReleaseComObject (WS)
System.Runtime.InteropServices.Marshal.ReleaseComObject (MC)
End Sub
1
0 / 0 / 0
Регистрация: 29.01.2018
Сообщений: 28
11.02.2018, 20:25  [ТС]
densy, спасибо за код, вроде сработал, однако есть пару вопросов, скажи плиз, [del]

Добавлено через 35 минут
densy, скажи [del]
0
100 / 95 / 23
Регистрация: 30.08.2015
Сообщений: 457
11.02.2018, 20:36
Цитата Сообщение от Иванннн1995 Посмотреть сообщение
скажи свою почту плиз) если не сложно)
пиши все на форум, если вопрос по фрилансу ссылка в подписи
0
0 / 0 / 0
Регистрация: 29.01.2018
Сообщений: 28
13.02.2018, 08:09  [ТС]
densy, помоги пожалуйста, очень нужна твоя помощь!!!

Ещё раз спасибо за код, он работает, получилась матрица из единиц, размером 5 на 5, однако, для моей задачи требуется вместо матрицы получить массив данных и запихнуть их в переменную, то есть, имеется уравнение с 2 переменными, переменные меняются от 0 до 10, тем самым мы получим 10 значений, вот все эти 10 значений надо запихнуть в одну переменную и перенести в маткад, как это у тебя получилось с матрицей, помоги пожалуйста с этим!!!
0
100 / 95 / 23
Регистрация: 30.08.2015
Сообщений: 457
13.02.2018, 11:55
Иванннн1995, не могу.. своими ответами я нарушаю правила форума
читай - книгу visual basic step by step там есть описание такое объект/типизация/объявление и тд также там решение мат задач не много
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.02.2018, 11:55
Помогаю со студенческими работами здесь

Как построить график функции в MathCad
Вот по этой формуле:

Построить график функции f(x) встроенной функции MathCAD root
Построить график функции f(x) и приблизительно определить один из корней уравнения. Решить уравнение f(x) = 0 с помощью встроенной...

Выполнить интерполяцию функции, используя формулу Лагранжа, и построить график интерполяционного полинома
Мой 9 вариант.

В Mathcad 3.0 можно сделать .exe-шник как на С# или Visual Basic ?
У меня есть данные и график который строит маткад , я хочу сделать .exe-шник чтобы без маткада на любом компе можно было увидеть расчёты и...

Построить график в MathCad
Нужно построить вот такой вот график. Его все точки уже посчитаны, теперь осталось только построить. Есть какие-нибудь варианты?


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru