Какие свойства фигуры можно изменить

Какие свойства фигуры можно изменить thumbnail

samuel_unknown
12.07.2014

Введение

SFML предоставляет набор классов для отображения простых фигур. Каждый из типов фигур — это отдельный класс, но все они происходят из одного базового класса и потому имеют набор одинаковых методов. Каждый класс добавляет специфичные для него свойства: радиус для круга, размеры для прямоугольника, вершины многоугольника и т.д.

Общие свойства фигур

Трансформация (позиция, поворот, масштаб)

Это свойство является общим для всех графических классов SFML, поэтому они описаны в отдельном руководстве: (пока тут ссылка на не переведённый оригинал).

Цвет

Одно из главнейших свойств фигур — это их цвет, который можно менять с помощью метода setFillColor().

sf::CircleShape shape(50);

// задаём фигуре зелёный цвет
shape.setFillColor(sf::Color(100, 250, 50));

graphics-shape-color

Контур

Фигуры могут иметь контур. Вы можете задать толщину и цвет контура методами setOutlineThickness() и setOutlineColor().

sf::CircleShape shape(50);
shape.setFillColor(sf::Color(150, 50, 250));

// задаём контур толщиной 10 пикселей оранжевого цвета
shape.setOutlineThickness(10);
shape.setOutlineColor(sf::Color(250, 150, 100));

graphics-shape-outline

По умолчанию контур вырисовывается снаружи фигуры (если у вас есть круг с радиусом 10 и контур толщиной 5, то вы получите круг с радиусом 15). Контур можно применять и по направлению к центру фигуры, для этого необходимо задавать отрицательные значения толщины.

Для того что бы убрать контру, необходимо задать нулевую толщину. Если же вам нужен только контур, то в функции setFillColor() следует задать в качестве аргумента цвет sf::Color::Transparent.

Текстура

Фигуры, также как и спрайты, могут быть затекстурированы. Для указания того, какая часть текстуры должна отобразиться на фигуре, вам необходимо использовать метод setTextureRect(). Он принимает в качестве аргумента прямоугольную область текстуры для сопоставления ограничивающего прямоугольника фигуре. Этот метод не обеспечивает максимальной гибкости, но зато он гораздо проще в использовании, чем индивидуальное задание текстурных координат каждой точке фигуры.

sf::CircleShape shape(50);

// сопоставляем текстурированный прямоугольник 100×100 фигуре
shape.setTexture(&texture); // texture это sf::Texture
shape.setTextureRect(sf::IntRect(10, 10, 100, 100));

graphics-shape-texture

Обратите внимание что контур не текстурируется.

В случае когда фигура имеет цвет заливки, текстура модулируется (умножается) на него. Для отключения текстурирования следует вызвать setTexture(NULL).

Рисование фигуры

Рисование фигур такое же простое как и рисование других объектов SFML:

window.draw(shape);

Типы форм

Прямоугольник

Для рисования прямоугольников необходимо использовать класс sf::RectangleShape. Он имеет только одно свойство: размер прямоугольника.

// определяем прямоугольник размером 120×50
sf::RectangleShape rectangle(sf::Vector2f(120, 50));

// меняем размер 100×100
rectangle.setSize(sf::Vector2f(100, 100));

graphics-shape-rectangle

Круг

Круг представлен классом sf::CircleShape. Класс имеет два свойства: радиус и количество граней. Количество граней является дополнительным свойством, позволяющим настроить качество отображения круга: круги имитируются многоугольниками с большим числом граней (видеокарты просто не способны рисовать идеальные круги), в общем это свойство устанавливает число граней. Если вы рисуете маленькие круги, то вам нужно совсем немного граней что бы они отображались достаточно гладкими. Обратное тоже верно — чем больше круг, тем больше нужно граней.

// определяем круг с радиусом = 200
sf::CircleShape circle(200);

// меняем радиус на 40
circle.setRadius(40);

// меняем число граней на 100
circle.setPointCount(100);

Правильные многоугольники

На самом деле для них нет отдельного класса, да он и не нужен. Воспользовавшись классом sf::CircleShape и установив число граней равным 3, мы получим треугольник, если взять 4 грани, то получится квадрат и т.д.

// определяем треугольник
sf::CircleShape triangle(80, 3);

// определяем квадрат
sf::CircleShape square(80, 4);

// определяем восьмиугольник
sf::CircleShape octagon(80, 8);

graphics-shape-regular

Выпуклые фигуры

Класс sf::ConvexShape является последним из классов фигур: он позволяет определить фигуру, до тех пор пока она является выпуклой. Действительно, SFML не способен нарисовать вогнутые фигуры; если такие нарисовать необходимо, то их всегда можно разбить на несколько выпуклых.

Для определения выпуклой фигуры для начала необходимо указать общее число точек-вершин, и только потом определить эти точки.

// создаём пустую фигуру
sf::ConvexShape convex;

// изменяем размер на 5 вершин
convex.setPointCount(5);

// определяем вершины
convex.setPoint(0, sf::Vector2f(0, 0));
convex.setPoint(1, sf::Vector2f(150, 10));
convex.setPoint(2, sf::Vector2f(120, 90));
convex.setPoint(3, sf::Vector2f(30, 100));
convex.setPoint(4, sf::Vector2f(0, 50));

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

graphics-shape-convex

Формально, sf::ConvexShape позволяет создавать только выпуклые фигуры. На деле же требования немножко мягче..На самом деле ваша форма должна соответствовать следующему критерию: любая из линий проведённых от центра тяжести фигуры до вершины, не должна пересекать границу фигуры. Следуя этому правилу можно, например, рисовать звёзды.

Линии

Для линий нет отдельного класса. Причина очень простая: если у линии есть толщина, используется фигура прямоугольник, если толщины нет, используется примитив линия.

Линия с толщиной:

sf::RectangleShape line(sf::Vector2f(150, 5));
line.rotate(45);

graphics-shape-line-rectangle

Линия без толщины:

sf::Vertex line[] =
{
sf::Vertex(sf::Vector2f(10, 10)),
sf::Vertex(sf::Vector2f(150, 150))
};

window.draw(line, 2, sf::Lines);

graphics-shape-line-primitive

Больше о примитивах будет рассказано в другом уроке (пока тут ссылка на не переведённый оригинал).

Пользовательские типы фигур

Вы можете расширить набор классов, имеющих свои типы форм. Для этого понадобится создать производный класс от класса sf::Shape и переопределить два метода:

  • getPointCount: возвращает число вершин фигуры
  • getPoint: возвращает вершину фигуры
Читайте также:  Какие свойства глицина проявляются в каждой из этих реакций

Кроме того, каждый раз как у вашей фигуры изменяются вершины, вы должны вызывать защищённый (protected) метод update(), что бы базовый класс знал об этом и мог обновить своё состояние.

Вот полный пример создания подобного класса class: EllipseShape:

class EllipseShape : public sf::Shape
{
public :

explicit EllipseShape(const sf::Vector2f& radius = sf::Vector2f(0, 0)) :
m_radius(radius)
{
update();
}

void setRadius(const sf::Vector2f& radius)
{
m_radius = radius;
update();
}

const sf::Vector2f& getRadius() const
{
return m_radius;
}

virtual unsigned int getPointCount() const
{
return 30; // здесь фиксировано, но может быть атрибутом класса, если это необходимо
}

virtual sf::Vector2f getPoint(unsigned int index) const
{
static const float pi = 3.141592654f;

float angle = index * 2 * pi / getPointCount() – pi / 2;
float x = std::cos(angle) * m_radius.x;
float y = std::sin(angle) * m_radius.y;

return sf::Vector2f(m_radius.x + x, m_radius.y + y);
}

private :

sf::Vector2f m_radius;
};

graphics-shape-ellipse

Сглаживание фигур

Нет каких-то функций для сглаживания конкретной фигуры. Если вы хотите получить сглаженные края фигур, то необходимо включить глобальное сглаживание на этапе создания окна. Это делается при помощи соответствующего атрибута структуры sf::ContextSettings.

sf::ContextSettings settings;
settings.antialiasingLevel = 8;

sf::RenderWindow window(sf::VideoMode(800, 600), “SFML shapes”, sf::Style::Default, settings);

graphics-shape-antialiasing

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

Источник

Для изменения свойств графичического объекта необходимо вызвать диалоговое окно, щелкнув правой кнопкой мыши на требуемой фигуре, и выполнить команду контекстного меню Формат фигуры (рис. 5.3).

В разделах Заливка, Цвет линии и Тип линии пользователь может определить цвет заливки замкнутой фигуры, а также цвет, тип и толщину линии, используемой для рисования текущей фигуры.

Задать различные эффекты для фигуры можно в разделах Формат объемной фигуры и Поворот объемной фигуры.

Диалоговое окно Формат фигуры

Рис. 5.3. Диалоговое окно Формат фигуры

Разделы Настройка рисунка, Цвет рисунка, Художественные эффекты и Обрезка доступны для импортированных графических изображений.

Раздел Надпись позволяет определить свойства объектов Надпись и подробно рассматривается в разделе Надписи и рамки.

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

Аналогичные действия можно выполнить, воспользовавшись вкладкой Формат, на которой можно изменить цвет
Какие свойства фигуры можно изменитьзаливка фигуры -, толщину и тип линии
Какие свойства фигуры можно изменитьконтур фигуры – ? настроить различные эффекты фигуры
Какие свойства фигуры можно изменить, используемойдля рисования текущей фигуры, задать точные размеры фигуры
Какие свойства фигуры можно изменитьс помощью соответствующих кнопок.

С помощью кнопки
Какие свойства фигуры можно изменить, которая представляет собой раскрывающийся список, можно вызвать диалоговое окно Разметка (рис. 5.4), нажав на кнопку открытия диалогового окна
Какие свойства фигуры можно изменитьвнизу списка.

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

На вкладке Обтекание текстом пользователь может задать тип обтекания объекта текстом. Выравнивание объекта допустимо, если тип обтекания отличен от В тексте.

Диалоговое окно Разметка

Рис. 5.4. Диалоговое окно Разметка

На вкладке Размер можно задать точные размеры фигуры, угол ее поворота относительно исходного положения, а также масштаб изображения фигуры относительно реального исходного размера. Установка флажка Сохранить все пропорции позволяет одновременно пропорционально изменять высоту и ширину фигуры.

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

Какие свойства фигуры можно изменить

Для того чтобы положение объекта на странице оставалось неизменным, следует установить параметр Установить привязку.

Чтобы привязать объект к определенному абзацу, необходимо выполнить такую последовательность действий.

  • 1. Выделить объект, щелкнув левой кнопкой мыши по границе контейнера.
  • 2. Установить флажки Перемещать вместе с текстом и/или Установить привязку.

3. Включить отображение непечатаемых символов, нажав на одноименную кнопку
Какие свойства фигуры можно изменитьна вкладке Главная в группе Абзац.

4. На левом поле страницы найти символ привязки надписи
Какие свойства фигуры можно изменить Если символ не располагается около требуемого абзаца, то следует подвести указатель мыши к символу
Какие свойства фигуры можно изменить, нажать левую кнопку и перетащить его к нужному абзацу.

5. Выключить отображение непечатаемых символов, нажав на одноименную кнопку
Какие свойства фигуры можно изменить

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

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

Кнопка Надпись
Какие свойства фигуры можно изменить
на вкладке Формат позволяет создать надпись текущей фигуре.

Для форматирования импортированных графических объектов доступна вкладка Формат при щелчке на объекте. С помощью специальных средств этой вкладки пользователь может управлять цветовой гаммой рисунка, а также яркостью и контрастностью изображения. Для отображения части рисунка следует при помощи кнопки

Какие свойства фигуры можно изменитьзадать размер скрываемой области с каждого края изображения. После нажатия на кнопку на границе изображения появятся специальные маркеры. После задания требуемого размера для обрезки объекта нажмите клавишу Enter.

Читайте также:  Какое свойство воздуха доказывает этот опыт 3 класс запиши

Источник

Это задание составлено в виде игры, в которой ребенку предстоит менять свойства геометрических фигур: форму, цвет или размер. Такое развивающее занятие способствует более эффективному запоминанию геометрических фигур, так как здесь ребенок не только визуально их запоминает, но и с помощью логического мышления меняет их главные свойства, “обрабатывая” фигуры на волшебной фабрике.

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

“Сейчас мы с тобой начинаем работать на фабрике. Здесь находятся специальные машины, которые меняют различные характеристики фигур: цвет, форму или размер. Каждая фигура, которая попадает в эту машину, проходит обработку по строгой инструкции и выходит уже измененной.”

После этого взрослый показывает пример, как работает машина на этой фабрике, изменяющая цвет фигур:

Свойства геометрических фигур для дошкольников - Волшебная фабрика

Затем взрослый объясняет ребенку принцип работы такой машины: “Любая фигура зеленого цвета, попадающая в машину, меняет цвет на красный (от зеленого круга с буквой “З” стрелочка ведет к красному кругу), любая фигура красного цвета – меняется на синий, а синяя фигура меняется на зеленый цвет.

На фабрике есть и другие машины, которые меняют другие свойства геометрических фигур – не цвет (как в рассмотренном примере), а форму или размер. Изменения с фигурами происходят по аналогичному принципу (следим за стрелочками, которые показывают, на какие фигуры должны поменяться заданные). 

Также в некоторых бланках встречаются машины, которые меняют не одно свойство фигуры, а сразу два – например, цвет и форму или форму и величину.

Скачать задания – Свойства геометрических фигур – вы можете во вложениях внизу страницы

В этих заданиях нужно поменять только одно свойство фигур – их цвет. Не забудьте раскрасить фигуры слева до того, как дать ребенку задание. 

Изменяем свойство фигур - цвет - на волшебной фабрике

Меняем цвет фигур

В следующем задании нужно поменять другое свойство геометрических фигур – их форму. Овал меняется на прямоугольник, прямоугольник – на ромб, ромб – на овал. Будьте внимательны! Овалы и прямоугольники в задании разные – горизонтальные и вертикальные. Менять нужно именно такие, какие нарисованы в машине. Обязательно раскрасьте фигуры слева, прежде чем начинать работу.

Изменяем форму фигур на другую

В данном задании заданная фигура сначала меняет свою форму (в первой машине), а затем и свой цвет (вторая машина). 

Изменить форму и цвет заданных фигур

В следующем задании машины изменяют величину фигур: большие квадратики на маленькие, маленькие треугольники на большие.

Изменить свойство фигуры - ее размер

На следующих машинах мы меняем сначала форму фигур, а затем их величину.

Меняем форму и величину фигур

В этом задании фигуры меняют на первой машине свой цвет, а на второй машине – величину.

Меняем свойства фигур - цвет и размер

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

Изменить свойства - цвет, размер и форму фигур

Группы геометрических фигур по их признакам

В этом задании вы найдете группы геометрических фигур, каждая из которых объединяет в себе фигуры по какому-то определенному признаку. Например, по цвету, форме или размеру. Ребенок должен определить по какому именно признаку разбиты фигуры в каждой группе. Подобные занятия развивают логико-математические способности детей.

Скачайте и распечатайте бланки с заданиями, дайте ребенку и объясните ему правила для выполнения упражнения: “Посмотри, здесь нарисованы геометрические фигуры, которые разбиты на несколько групп. В каждой группе фигуры объединяет какое-то одно свойство или признак. Например, в группе присутствуют все фигуры одного цвета (серый, белый или черный), одной формы (треугольник, квадрат или круг) или одного размера (маленькие, средние или большие).

Если ребенку трудно выполнять данное упражнение самостоятельно, то помогите ему встречными вопросами: “Какие геометрические фигуры ты видишь на странице? Чем они отличаются между собой? Что у них общего?”

Очень важно проводить такие занятия систематически, используя подручные материалы. Например, можно использовать пуговицы различной формы (квадратные, круглые, овальные, ромбовидные и другие), разных цветов, с разным количеством дырочек. Принцип выполнения задания тот же, что и в представленных бланках. Взрослый раскладывает на столе пуговицы, разделяя их на группы по определенному признаку. А ребенок должен определить, что общего в этих группах. Занятие будет более эффективным, если ребенок будет не только находить признаки групп, но и сам, по просьбе взрослого, будет объединять предметы в разные группы по заданным признакам. 

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

Читайте также:  Какие вещества проявляют амфотерные свойства

Бланк №1

Группы геометрических фигур по признакам

Бланк №2

Группировка фигур по признаку - форма

Бланк №3

Группы фигур по признаку - размер

Свойства объемных геометрических фигур – Лестница превращений

Здесь вы найдете занятие, с помощью которого ребенок научится различать свойства объемных геометрических фигур: цвет, форму и размер. Занятие представлено в двух вариантах сложности: легком (для детей от 4 лет) и усложненном (для детей от 5-6 лет). Легкий вариант задания – в бланке №1, а усложненный – в бланке №2. В бланках №3 и №4 вы можете посмотреть правильные ответы. Подготовьте цветные карандаши, распечатанные бланки с заданиями и объясните ребенку правила выполнения упражнений:

“Посмотри внимательно на картинку. Здесь изображена лестница превращений геометрических фигур. Начиная с самой нижней ступеньки каждая фигура с переходом на следующую ступеньку меняет какое-либо одно свое свойство: цвет (белый, серый или черный), форму (куб, конус или шар) или величину (большую или маленькую). Например, вот этот большой белый шар (взрослый показывает пример превращений щара на бланке №1) на второй ступеньке меняет свой размер и становится маленьким, на третьей ступеньке меняет цвет с белого на черный, на четвертой – опять становится большим, на пятой ступеньке у него меняется форма и он превращается в конус.” 

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

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

Скачать задание на свойства объемных фигур вы можете во вложениях внизу страницы

Бланк №1 – Легкий вариант

Свойства объемных геометрических фигур

Бланк №2 – Усложненный вариант

Свойства объемных фигур - усложненный вариант

Бланк №3 – Правильные ответы на легкий вариант

Объемные фигуры - правильные ответы на легкий вариант

Бланк №4 – Правильные ответы на усложненный вариант

Цвет, форма и размер фигур - меняем свойства

Также вам будут полезны и другие материалы по изучению геометрических фигур: 

Задания в картинках - Рисунки из геометрических фигурРисунки из геометрических фигур – Задания в картинках и раскраски

Веселые и красочные задания для детей “Рисунки из геометрических фигур” являются очень удобным обучающим материалом для детей дошкольного и младшего школьного возраста по изучению и запоминанию основных геометрических форм.

Распечатать задания - Геометрические фигуры и их названияГеометрические фигуры и их названия – Задания в картинках

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

Скачать геометрические фигуры - Раскраску для детейГеометрические фигуры – Раскраска для дошкольников

Задания ознакомят ребенка с основными фигурами геометрии – кругом, овалом, квадратом, прямоугольником и треугольником. Только здесь не занудное зазубривание названий фигур, а своеобразная игра-раскраска.

Картинки - Плоские геометрические фигуры - задания для детейПлоские геометрические фигуры – Обведи и дорисуй

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

Найди формы геометрических фигур среди всех картинокНайди формы геометрических фигур в картинках

Это занятие изрядно позабавит ваших юных математиков. Ведь теперь им придется находить знакомые формы геометрических фигур среди множества картинок. 

Задание - Наложение геометрических фигур друг на другаНаложение фигур друг на друга – Задание для детей

Наложение фигур друг на друга – это занятие по геометрии для дошкольников и младших школьников. Смысл упражнения состоит в решении примеров на сложение. Только это необычные примеры. Вместо цифр здесь нужно складывать геометрические фигуры. 

Задания в картинках - Счет геометрических фигурСчет геометрических фигур – Картинки с заданиями

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

Распечатать задания - Чертежи геометрических тел - для детейЧертежи геометрических тел – Задание для детей

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

Скачать схему - Геометрические фигуры из бумаги - для вырезанияГеометрические фигуры из бумаги – Вырезаем и занимаемся

Здесь мы подготовили для вас объемные геометрические фигуры из бумаги, которые нужно вырезать и склеить. Куб, пирамиды, ромб, конус, цилиндр, шестигранник,  распечатать их на картоне (или цветной бумаге, а затем наклеить на картон), а затем дать ребенку для запоминания. 

Учим устный счет в пределах 10 - РаспечататьУстный счет в пределах 10 – Картинки с заданиями

Здесь мы подготовили для вас устный счет в пределах 10 в виде математических заданий в картинках. Данные задания формируют у детей навыки счета и способствуют более эффективному обучению простых математических действий.

И еще можете поиграть в математические игры онлайн от лисенка Бибуши:

Игра Найди лишние геометрические фигурыИгра “Что лишнее? – Геометрические формы”

В этой развивающей онлайн игре ребенку предстоит определить, что является лишним среди 4 картинок. При этом необходимо руководствоваться признаками геометрических форм.

Источник