Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.06.2015, 17:11   #1
NataliSha
Новичок
Джуниор
 
Регистрация: 15.06.2015
Сообщений: 1
По умолчанию Плагин к программе Apophysis. Нужно подробное объяснение того, что тут происходит.

Плагин1)
#define _USE_MATH_DEFINES
#define APO_NOVARIABLES
#include "apoplugin.h"


APO_PLUGIN("ex");


int PluginVarPrepare(Variation* vp)
{
return TRUE; // Always return TRUE.
}


int PluginVarCalc(Variation* vp)
{
double FAngle = atan2(FTy, FTx);
double r = sqrt(FTx*FTx+FTy*FTy);
double n0 = sin(FAngle + r);
double n1 = cos(FAngle - r);
double m0 = sqr(n0) * n0;
double m1 = sqr(n1) * n1;

r = r * VVAR;
FPx = FPx + r * (m0 + m1);
FPy = FPy + r * (m0 - m1);

return TRUE;
}
Плагин 2)
// Must define this structure before we include apoplugin.h
typedef struct
{
double whorl_inside;
double whorl_outside;
} Variables;

#include "apoplugin.h"

// Set the name of this plugin
APO_PLUGIN("whorl");

// Define the Variables
APO_VARIABLES(
VAR_REAL(whorl_inside, 1.0),
VAR_REAL(whorl_outside, 1.0)
);

// You must call the argument "vp".
int PluginVarPrepare(Variation* vp)
{
// Always return TRUE.
return TRUE;
}

// You must call the argument "vp".
int PluginVarCalc(Variation* vp)
{
double a, r;
double sina, cosa;

r = sqrt(FTx*FTx + FTy*FTy);

if(r < VVAR)
{
a = atan2(FTy, FTx) + VAR(whorl_inside)/(VVAR - r);
}
else
{
a = atan2(FTy, FTx) + VAR(whorl_outside)/(VVAR - r);
}
fsincos(a, &sina, &cosa);
FPx += VVAR*r*cosa;
FPy += VVAR*r*sina;

return TRUE;
}

Последний раз редактировалось NataliSha; 15.06.2015 в 20:05.
NataliSha вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу понять строку кода. Подскажите что тут происходит pompiduskus JavaScript, Ajax 9 06.04.2014 20:25
нужно обьяснить что происходит в программе anton6262906 Общие вопросы C/C++ 0 28.12.2011 12:03
Что тут сделать нужно Rastislav Паскаль, Turbo Pascal, PascalABC.NET 9 08.10.2010 19:45
что тут нужно делать? :( мяус Microsoft Office Excel 2 23.06.2010 12:25
что тут нужно изменить? asd48 Общие вопросы C/C++ 2 08.04.2009 21:47