Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.95/21: Рейтинг темы: голосов - 21, средняя оценка - 4.95
 Аватар для kavayka
2 / 2 / 0
Регистрация: 11.12.2009
Сообщений: 23

Нарисовать куб

19.03.2010, 09:01. Показов 4311. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
1.Подскажите,какую процедуру нужно применить,чтобы получился именно такой кубик(с такой передней гранью),или же его рисовать линиями???

2. Помогите нарисовать вот этот рисунок,или хотя бы подскажите как сделать эти кубики.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
19.03.2010, 09:01
Ответы с готовыми решениями:

Нарисовать куб
Нарисовать куб. Передняя левая нижняя вершина куба имеет координаты (X, Y), длина ребра A. закрасить верхнюю грань, а в правой грани...

Нарисовать куб 10*10*10
Написать универсальную для различных наборов исходных данных подпрограмму, которая вычисляет сумму элементов матрицы, стоящих на четных...

Нарисовать и закрасить куб
Подскажите пожалуйста как создать куб(и закрасить) и возможно ли вращение его?

20
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
19.03.2010, 10:46
https://www.cyberforum.ru/pascal/thread56317.html
1
 Аватар для kavayka
2 / 2 / 0
Регистрация: 11.12.2009
Сообщений: 23
19.03.2010, 11:13  [ТС]
Вы очень добры. Но я уже была там,скачала книги,читала сообщения,но толком ответов так и не нашла. Неужели так сложно написать названия процедур?Я же ведь не прошу целый текст программы
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
19.03.2010, 11:56
Цитата Сообщение от kavayka Посмотреть сообщение
Но я уже была там,скачала книги,
После того как книги скачивают, их читают. А там написано, что кубик рисует процедура Bar3d с закраской граней цветом фона.
Кубики рисуются в цикле 7х7 процедурой Bar с циклической сменой цвета.
Концентрические окружности также в цикле процедурой Circle, через раз пространство закрашивается с применением процедур
Setfillstyle + FloodFill

Добавлено через 2 минуты
Кстати на втором рисунке не кубики, а квадратики.
1
 Аватар для kavayka
2 / 2 / 0
Регистрация: 11.12.2009
Сообщений: 23
19.03.2010, 12:00  [ТС]
Я знаю о процедуре Bar3d,но она рисует не много иную переднюю грань,точнее прямо,а мне нужно,как на рисунке. Процедурой Circle я так же умею пользоваться,я не пойму как наложить квадратики на окружности,что бы белый цвет,в квадрате становился черным
p.s. знаю,просто пол дня за кубик думаю,поэтому и затупила.
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
19.03.2010, 12:15
Ну тогда куб просто линиями.
0
 Аватар для kavayka
2 / 2 / 0
Регистрация: 11.12.2009
Сообщений: 23
19.03.2010, 12:20  [ТС]
Понятно...А как наложить квадратики не подскажите???
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
19.03.2010, 12:20
Подскажу, я лучше нарисую.
0
 Аватар для kavayka
2 / 2 / 0
Регистрация: 11.12.2009
Сообщений: 23
19.03.2010, 12:26  [ТС]
ну давайте
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
19.03.2010, 12:52
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
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
uses graph;
var x0,y0,i,j,r:integer;
begin
i:=0;
initgraph(i,j,'');
x0:=getmaxX div 2;
y0:=getmaxY div 2;
setbkcolor(7);
setcolor(8);
r:=20;
setfillstyle(1,8);
for i:=1 to 8 do
 begin
  circle(x0,y0,r*i);
  if i mod 2=0 then
  floodfill(x0+r*i-5,y0,8);
 end;
for i:=1 to 8 do
for j:=1 to 8 do
 begin
  if (i+j) mod 2=0 then
    begin
     setfillstyle(1,7);
     Bar(x0+r*(i-1),y0+r*(j-1),x0+r*i,y0+r*j);
    end
  else
   begin
    setfillstyle(1,8);
    Bar(x0+r*(i-1),y0+r*(j-1),x0+r*i,y0+r*j);
   end;
 end;
setcolor(8);
rectangle(x0,y0,x0+r*8,y0+r*8);
readln
end.
2
 Аватар для kavayka
2 / 2 / 0
Регистрация: 11.12.2009
Сообщений: 23
19.03.2010, 12:56  [ТС]
Вы самый лучший
0
19.03.2010, 14:28

Не по теме:

Вы самый лучший :-*
Я знаю! :rose:

0
 Аватар для kavayka
2 / 2 / 0
Регистрация: 11.12.2009
Сообщений: 23
19.03.2010, 14:44  [ТС]
Я опять зависла...Подскажите,как залить переднюю и боковую грани
Pascal
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
uses crt, graph;
var x,y,a,c:integer;
begin
clrscr;
randomize;
x:=0;
initgraph(x,y,'');
     x:=50;
     y:=50;
     a:=50;
 
 
{передняя}
line(x,y,x*4,y+a);
line(x,y,x,y*4);
line(x,y*4,x*4,y*5);
line(x*4,y*5,x*4,y*2);
 
c:=random(14)+1;
{верхняя}
line(x,y,x*3,0);
line(x*3,0,x*6,y);
line(x*4,y*2,x*6,y);
{нижняя}
line(x*4,y*5,x*6,y*4);
line(x*6,y*4,x*6,y);
readln
end.
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
19.03.2010, 16:30
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

kavayka,Во-первых на картинке грани не залиты, а потом называйте грани правильно. Где тут передняя, верхняя и нижняя? Я например вижу верхнюю, левую и правую.
А залить просто, как в моей программе.
Устанавливаете стиль заливки
setfillstile(1,n)//сплошным цветом такой как у ребер этой грани
выбираете абсолютно любую точку внутри грани и заливаете
floodfill(x,y,n);

Добавлено через 34 минуты
Pascal
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
uses graph;
var x,y,a,h,c:integer;
begin
randomize;
x:=0;
initgraph(x,y,'');
x:=getmaxX div 2;
y:=round(getmaxY*2/3);
a:=150;
h:=40;
{левая грань}
c:=random(12)+1;
setcolor(c);
line(x,y,x-a+h,y-h);
line(x-a+h,y-h,x-a+h,y-a-h);
line(x-a+h,y-a-h,x,y-a);
line(x,y-a,x,y);
setfillstyle(1,c);
floodfill(x-10,y-h,c);
{правая грань}
c:=c+1;
setcolor(c);
line(x,y,x+a-h,y-h);
line(x+a-h,y-h,x+a-h,y-a-h);
line(x+a-h,y-a-h,x,y-a);
line(x,y-a,x,y);
setfillstyle(1,c);
floodfill(x+10,y-h,c);
{верхняя грань}
c:=c+1;
setcolor(c);
line(x-a+h,y-a-h,x,y-a);
line(x+a-h,y-a-h,x,y-a);
line(x+a-h,y-a-h,x,y-a-2*h);
line(x,y-a-2*h,x-a+h,y-a-h);
setfillstyle(1,c);
floodfill(x,y-a-h,c);
readln
end.
1
 Аватар для kavayka
2 / 2 / 0
Регистрация: 11.12.2009
Сообщений: 23
19.03.2010, 16:46  [ТС]
Я даже не знаю как Вас благодаритьВы очень хороший,а главное понимающий человек
0
0 / 0 / 0
Регистрация: 21.02.2010
Сообщений: 32
31.03.2010, 20:20
Уважаемый Puporev,очень нуждаюсь в Вашей помощи. Подскажите,как нарисовать правую и левую грани с помощью процедуры Rectangle. Как сказал преподаватель,верхняя точка правой грани,а точнее ее координаты, должны быть умножены примерно на сos(45),чтобы квадрат принял не стандартный вид. Но задавая координаты,программа выдает ошибку связанную с типом. Я ставил все возможные типы,но результат один и тот же -"Ошибка".
Я не представляю что делать. Буду очень благодарен за помощь.
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
01.04.2010, 06:16
Nestor, Процедура rectangle рисует прямоугольник со сторонами, параллельными осям координат, ромбы и параллелограммы она не рисует. стороны куба можно рисовать только линиями.
1
paladin
 Аватар для Yurii_74
286 / 187 / 7
Регистрация: 25.02.2009
Сообщений: 589
01.04.2010, 08:02
Polyline, polygone вроде для этих целей в Паскале были... когда-то. Поправьте, если не прав.
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
01.04.2010, 08:16
Этого нет в Турбо Паскале. Полигон нужно создавать самому из массива точек, но соединять их все равно с помощью Lineto.
0
paladin
 Аватар для Yurii_74
286 / 187 / 7
Регистрация: 25.02.2009
Сообщений: 589
01.04.2010, 12:21
В турбо паскале все же что-то было. Если один сайт не врет, то в модуле graph должна содержаться такая функция:
FillPoly (N: Word; Var PolyPoints);
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
01.04.2010, 12:21
Помогаю со студенческими работами здесь

Нарисовать куб с разноцветными гранями
Пожалуйста напишите программу, выдающую на экран куб, а квадраты черного белого и серого цвета...заранее спасибо!!

Нарисовать куб, грани которого закрашены в разные цвета
Помогите, очень нужно! Нарисовать куб, грани которого закрашены в разные цвета(вид сбоку). Сделать рядом надпись: "Куб: длина ребра...

Нужно нарисовать куб в котором с каждой стороны по 6 квадратов и они все разных цветов
Помогите пожалуйста!!!! очень прошу, буду очень благодарна если поможете мне. Мне нужно решить задачу на графику с помощью graph, нужно...

Нарисовать флаг, нарисовать график y=ctg x Нарисовать анимацию
Дело таково у меня сейчас практика, где я очень не успиваю сделать все свои задания... Большая просьба кто готов помочь, пишите а кто...

Куб числа
как писать на паскале куб числа например косинус икса?


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
PowerShell Snippets
iNNOKENTIY21 11.11.2025
Модуль PowerShell 5. 1+ : Snippets. psm1 У меня модуль расположен в пользовательской папке модулей, по умолчанию: \Documents\WindowsPowerShell\Modules\Snippets\ А в самом низу файла-профиля. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru