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

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

Вернуться   Форум программистов > C/C++ программирование > C++ Builder
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.11.2015, 21:24   #11
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Видимо нужно что-то типа:
Код:
void draw(TCanvas *c, double ang, int cx, int cy){
 c->MoveTo(cx,cy);
 c->LineTo(round(cx+r*cos(gradtorad(ang))),round(cy+r*sin(gradtorad(ang))));
 c->LineTo(round(cx+r*cos(gradtorad(ang+30))),round(cy+r*sin(gradtorad(ang+30))));
 c->LineTo(cx,cy);
}
void __fastcall TForm1::PaintBox1Paint(TObject *Sender)
{
		Graphics::TCanvas* a = ((TPaintBox*)Sender)->Canvas;
		a->Brush->Style = bsSolid;
		a->Pen->Style = psSolid;

		a->Brush->Color = RGB(255, color1G, 0);
		a->Pen->Color = a->Brush->Color;
		a->Ellipse(posX, posY, posX + R, posY + R);

		double cx = posX + R / 2;
		double cy = posY + R / 2;
		double cr = R / 2;
	for(double d=0;d<360;d+=360/4) draw(a,d,cx,cy);

}
Честно признаюсь: Не проверял...
I'm learning to live...

Последний раз редактировалось Stilet; 28.11.2015 в 21:26.
Stilet вне форума Ответить с цитированием
Старый 05.12.2015, 10:01   #12
wall33
Пользователь
 
Регистрация: 30.10.2015
Сообщений: 19
По умолчанию

Вот набросал мат часть
Изображения
Тип файла: jpg gYu4r-DTfKc.jpg (62.1 Кб, 135 просмотров)
wall33 вне форума Ответить с цитированием
Старый 10.12.2015, 10:26   #13
wall33
Пользователь
 
Регистрация: 30.10.2015
Сообщений: 19
По умолчанию

Код:
#define _USE_MATH_DEFINES
#include <vcl.h>
#include <cmath>
#pragma hdrstop
#ifndef M_PI
#define M_PI 3.1415926535897932384626433832795
#endif
#include "Unit1.h"
 
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
 
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner){}
 
static HBRUSH  g_brush = NULL;
static HBITMAP g_bmp   = NULL;
static HDC     g_hdc   = NULL;
static int     g_size  = 0;
 
void __fastcall TForm1::FormCreate(TObject *Sender){
        g_brush = CreateSolidBrush(RGB(0, 0, 0));
        g_size  = Width / 2;
        g_bmp   = CreateCompatibleBitmap(Canvas->Handle, g_size, g_size); 
        g_hdc   = CreateCompatibleDC(Canvas->Handle);
        SelectObject(g_hdc, g_bmp);
 
        Timer1->Enabled  = true;
        Timer1->Interval = 80;
}
 
void __fastcall TForm1::Timer1Timer(TObject *Sender){
    POINT dots[3];
    int   pos    = g_size / 2;
    int   radius = pos - 4;
 
    RECT rc = { 0, 0, g_size, g_size };
 
        FillRect(g_hdc, &rc, g_brush);
        Ellipse(g_hdc, pos - radius, pos - radius, pos + radius, pos + radius);
        HGDIOBJ old = SelectObject(g_hdc, g_brush);
        
        double theta;
        double step  = 360.0 / 8.;
        double off   = (double)GetTickCount() / 20.;
        //рисуем пропеллеры
        for(int i = 0; i < 4; ++i){
                theta = off * (M_PI / 180.);
                dots[0].x = dots[0].y = pos;
                dots[1].x = pos + radius * std::cos(theta);
                dots[1].y = pos + radius * std::sin(theta);
 
                theta = (off + step) * (M_PI / 180.);
                dots[2].x = pos + radius * std::cos(theta);
                dots[2].y = pos + radius * std::sin(theta);
 
                Polygon(g_hdc, dots, sizeof(dots)/sizeof(dots[0]));
                off += step * 2.;
        }
        SelectObject(g_hdc, old);
        //выводим на форму
        BitBlt(Canvas->Handle, (Width - g_size)/2, (Height - g_size)/2, 
               g_size, g_size, g_hdc, 0, 0, SRCCOPY);
}
 
void __fastcall TForm1::FormDestroy(TObject *Sender){
        DeleteObject(g_brush);
        DeleteObject(g_bmp);
        DeleteDC(g_hdc);
}
Помогите пишет неизвестные элементы
Код:
g_brush = CreateSolidBrush(RGB(0, 0, 0));
g_size = Width / 2;
g_bmp = CreateCompatibleBitmap(Canvas->Handle, g_size, g_size);
g_hdc = CreateCompatibleDC(Canvas->Handle);

Последний раз редактировалось Stilet; 10.12.2015 в 11:33.
wall33 вне форума Ответить с цитированием
Старый 10.12.2015, 11:33   #14
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Полностью текст ошибки в студию.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 10.12.2015, 12:08   #15
wall33
Пользователь
 
Регистрация: 30.10.2015
Сообщений: 19
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Полностью текст ошибки в студию.
Вот смотри
Изображения
Тип файла: jpg error.jpg (67.9 Кб, 137 просмотров)
wall33 вне форума Ответить с цитированием
Старый 10.12.2015, 14:03   #16
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А-а-а. Ну дык опиши же переменку:
Код:
HBRUSH g_brush
И все остальные.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 10.12.2015, 16:56   #17
wall33
Пользователь
 
Регистрация: 30.10.2015
Сообщений: 19
По умолчанию

подскажи как ???
wall33 вне форума Ответить с цитированием
Старый 11.12.2015, 23:12   #18
wall33
Пользователь
 
Регистрация: 30.10.2015
Сообщений: 19
По умолчанию

ребята выручайте))
wall33 вне форума Ответить с цитированием
Старый 11.12.2015, 23:19   #19
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
подскажи как ?
Как ты вообще умудрился написать такую программу не зная что пишешь?
Код:
HBRUSH g_brush;
HBITMAP g_bmp;
HDC g_hdc;
И зачем тебе WINAPI потребовалось?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.12.2015, 21:31   #20
wall33
Пользователь
 
Регистрация: 30.10.2015
Сообщений: 19
По умолчанию

я ее не писал помогали я не знаю как нарисовать эту фигуры но и не кто не может помочь как ее написать
wall33 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Паскаль Не получаеться дописать прогу помогите ПЛИЗ ученик91 Помощь студентам 3 08.12.2009 19:50
Дописать прогу. vetalij Общие вопросы C/C++ 9 16.10.2009 23:37
Помогите дописать прогу на делфи fox7 Помощь студентам 3 16.06.2007 23:44