Плоские графические примитивы. Построение графических примитивов Виды графических примитивов

(Основы инженерной графики)
  • ЖЕЛЕЗОБЕТОННЫЕ КОНСТРУКЦИИ ПЛОСКИХ ПЕРЕКРЫТИЙ
    Все существующие типы плоских железобетонных перекрытий по их конструктивной схеме делятся на две основные группы: балочные и безбалочные. Балочные перекрытия состоят из балок, идущих в одном или двух направлениях, и опирающихся на них плит или панелей. Безбалочные перекрытия выполняются без балок, а...
    (Строительные конструкции)
  • (Управление финансами)
  • Понятие о графических примитивах
    На большинстве ЭВМ и, соответственно, ПК принят растровый способ изображения графической информации. Это означает, что изображение представляется в виде прямоугольной матрицы точек (пикселей). Каждый пиксель имеет свой цвет, выбираемый из заданного набора цветов - гак называемой палитры. Для реализации...
    (Основы инженерной графики)
  • Графическое представление PV и FV
    На рынке капиталов организации и люди обменивают денежные средства в настоящем на денежные средства в будущем. Прямая АБ представляет собой норму обмена на рынке капиталов между денежными средствами сегодня и денежными средствами через год. Ее наклон равен на графике тангенсу острого угла наклона прямой...
    (Управление финансами)
  • Подготовка, оформление и ведение графических документов, используемых сотрудниками органов внутренних дел в особых условиях
    В деятельности органов и учреждений МВД России нередко возникает необходимость использовать в работе план или схему участка местности. Составляются крупномасштабные планы территорий, обслуживаемых участковыми инспекторами, планы жилой и производственной зон учреждений исполнения наказания, схемы...
    (Тактико-специальная подготовка)
  • В системе AutoCAD любое изображение создается с помощью базового набора примитивов. Команды их отрисовки находятся в подменю Draw (Черчение) основного меню. Однако проще всего вызвать команду создания графического примитива при помощи пиктограммы панели инструментов Draw (Черчение), которая появляется сразу же после загрузки системы. Если по какой-либо причине эта панель отсутствует, вызвать ее можно, щелкнув правой кнопкой мыши по любой пиктограмме системной панели инструментов. При этом на экране появится контекстное меню из которого следует выбрать строку Draw (Черчение), щелкнув на ней левой кнопкой мыши.

    Каждый графический примитив может быть отрисован линиями определенного типа, толщины, цвета и расположен на определенном слое чертежа. Инструменты для задания этих свойств находятся в панели Object Properties (Свойства объектов). По сравнению с версией 14, в AutoCAD 2000 к свойствам примитивов добавилась толщина линии. Включать или отключать отображение толщины линии на экране можно кнопкой LWT (ТОЛЩ) в строке состояния.

    После загрузки системы для всех примитивов автоматически устанавливается нулевой слой, на котором примитивы будут иметь черный цвет, основной тип линий Continuous (Сплошная) и определенную толщину Default (По умолчанию). На пиктограммах цвета, типа и толщины линий панели инструментов Object Properties (Свойства объектов) устанавливается строка ByLayer (По слою), что означает соответствие их установкам текущего слоя (нулевого).

    Изменять цвет и толщину линий примитивов можно, просто используя соответствующие списки этих инструментов. Списки раскрываются при щелчке левой кнопки мыши по стрелке пиктограммы инструмента, например инструмента Lineweight Control (Выбор толщины линии). В раскрытом списке нужно лишь сделать соответствующий выбор команды в процессе построения сегментов линии или введением заглавной буквы с клавиатуры.

    Любой чертеж состоит из участков прямых и кривых линий. Для вычерчивания прямоугольных участков чертежа служат инструменты:

    Команда Line (Линия).

    Команда Constraction Line (Конструкционная линия) – служит для проведения вспомогательных линий..

    Команда Multiline (Мультилиния) строит совокупность параллельных (не более 16) ломаных линий, которые называются элементами.

    Команда Polyline (Ломаная) – позволяет строить последовательность прямолинейных дуговых сегментов.

    Команда Polygon (Многоугольник)

    Команда Rectangle (Прямоугольник)

    Для вычерчивания криволинейных участков служат инструменты:

    Команда Arc (Дуга) - позволяет вычертить часть окружности.

    Команда Circle (Окружность) позволяет вычертить окружность одним из шести способов.


    Команда Spline (Сплайн) позволяет провести на чертеже волнистую линию.

    Команда Ellipse (Эллипс) позволяет вычертить как полный эллипс, так и его часть.

    Для удаления объекта достаточно щелкнуть по пиктограмме Erase (Удалить) панели инструментов Modify (Изменение) и выбрать удаляемое. Можно вначале выбрать объект, а затем щелкнуть по пиктограмме Erase (Удалить) или просто нажать клавишу Delete на клавиатуре.

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

    Для того чтобы выбор объектов и их удаление происходили описанным выше способом, необходимо в диалоговом окне Options (Опции) меню Tools (Инструменты) открыть страницу Selection (Выбор) и установить флажок в окне Noun/verb selection (Предварительный выбор), а в окне Use Shift to add to selection (Использовать Shift для добавления к выделению) убрать флажок.

    Для отмены одной последней команды нужно щелкнуть по пиктограмме Undo (Отмена) на стандартной Панели инструментов. После каждого щелчка по пиктограмме будет отменяться последняя команда в списке выполненных. Когда список будет исчерпан, в командной строке появится сообщение Everything has been undone (Все команды отменены)

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

    число команд для отмены или [Авто/Управление/Начало/Конец/Метка/Обратно] <1>:)

    По умолчанию предлагается ввести число команд, которое нужно отменить. Если ввести, например, число 5, AutoCAD отменит пять последних команд.

    Команда Redo (Верни), вызванная при помощи стандартной панели инструментов или набранная с клавиатуры, восстанавливает все отмены команды Undo (Отмена), если последняя была введена с клавиатуры. Если же команда Undo (Отмена) вызывалась при помощи стрелки стандартной панели инструментов несколько раз, то Redo (Верни) восстановит лишь, последнюю отмененную команду.

    Для восстановления изображения на экране существует еще одна команда - команда OOPS (Ой). Она действует только по отношению к самой последней команде стирания графического объекта. Причем между командой стирания и командой OOPS (Ой) может быть сколько угодно команд. Эта команда вернет самый последний стертый графический объект независимо от его сложности.

    Точный ввод координат точек геометрических примитивов не всегда удобно осуществлять с клавиатуры или при помощи привязки точек к узлам сетки. Так, например, если нужно построить окружность с некоторым радиусом, центр которой должен совпадать с центром дуги удобнее использовать объектную привязку - в данном случае привязку к центру дуги. Объектную привязку можно использовать в любом случае, когда AutoCAD запрашивает точку (начальную, конечную, центр окружности и т.д.). К экранному перекрестью в этом случае добавляется специальный символ - мишень.

    Включать или отключать объектную привязку можно при помощи кнопки OSNAP (ОПРИВ) строки состояния, а устанавливать ту или иную объектную привязку можно при помощи панели инструментов Object Snap (Объектная привязка) непосредственно в процессе построения или в диалоговом окне Drafting Settings (Параметры привязки) закладки Object Snap (Объектная привязка). В последнем случае можно включать сразу несколько привязок, которые используются наиболее часто. Всего в AutoCAD 2000 существует 13 объектных привязок:

    Endpoint (Конец) - привязка к ближайшей конечной точке линии или дуги.

    Midpoint (Середина) - средняя точка линии или дуги.

    Center (Центр) - центр окружности, дуги или эллипса.

    Node (Узел) - привязка к точечному элементу.

    Quadrant (Квадрант) - привязка к ближайшей точке квадранта на дуге, окружности или эллипсе (0, 90, 180, 270°).

    Intersection (Пересечение) - пересечение двух объектов. Реализует два режима: поиск явной точки пересечения или пересечения их продолжений. В последнем случае с помощью маркера выбирается один объект, а затем второй, после чего происходит привязка к точке пересечения продолжения объектов. Extension (Продолжение) - привязка к продолжению линии или дуги.

    Insertion (Вставка) - привязка к точке вставки текста, блока.

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

    Tangent (Касательная) - привязка к точке на окружности или дуге, которая образует касательную при соединении с последней точкой.

    Nearest (Ближайшее) - привязка к точке на окружности или дуге, которая является ближайшей к перекрестию.

    Apparent insertion (Мнимое пересечение) - привязка к точке предполагаемого пересечения (ищет точку «пересечения» двух объектов, которые не имеют явной точки пересечения в пространстве - скрещивающиеся прямых, - а имеют лишь видимую на экране точку пересечения).

    Parallel (Параллель) - позволяет проводить линию параллельно ранее начерченной.

    Кроме двух новых объектных привязок, Extension (Продолжение) и Parallel (Параллель), в новой версии системы добавилась функция отслеживания Auto Track (Автоматическое отслеживание), которая включает две опции: полярное отслеживание и отслеживание при объектной привязке. Эта функция предназначена для черчения объектов под определенными углами или так, чтобы они были по-особому расположены относительно других объектов. Когда включен режим автоматического отслеживания Auto Track (кнопка OTRACK (ОСЛЕЖ) в строке состояния), система генерирует временные вспомогательные линии, что обеспечивает создание объектов в точных положениях и под точными углами и значительно экономит время создания чертежа.

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

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

    Создать новые слои можно в диалоговом окне Layer Properties Manager (Настройка свойств слоя), которое вызывается из меню Format > Layer... (Формат > Слои...) или двойным щелчком на кнопке Layer (Слои) панели инструментов Object Properties (Свойства объектов).

    Для создания нового слоя нужно щелкнуть по клавише New (Создать). При этом в диалоговом окне появится выделенная строка, в которой отражаются установленные по умолчанию параметры нового слоя:

    Name (Имя) - имя слоя - по умолчанию слою присваивается имя Слой1 (имя слоя можно менять, оно может содержать до 256 символов).

    On (Вкл) - видимость слоя - на экране и на бумаге вычерчиваются только те примитивы, которые находятся на видимых слоях, причем слой устанавливается по умолчанию видимым (светлая лампочка). Чтобы сделать слой невидимым, нужно щелкнуть по изображению лампочки мышью (лампочка темнеет).

    При повторном щелчке лампочка опять «загорится», то есть объекты на слое станут опять видимыми.

    Freeze (Заморозить для всех сечений) - замораживание слоя - аналогично параметру видимости, но отличается тем, что помимо отключения видимости примитивов при замораживании слоя отключается их генерация (перерисовка), что повышает скорость выполнения команд Zoom (Масштаб) и Pan (Перемещение).

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

    Color (Цвет) - цвет - определяет цвет примитивов в данном слое.

    Linetype (Тип линии) - тип линии. По умолчанию устанавливается Continuous (Сплошная). Тип линии для данного слоя можно заменить, выбрав его из списка диалогового окна Select Linetype (Выбор типа линии), которое появляется при щелчке мышью по строчке Continuous (Сплошная). Если в диалоговом окне отсутствует необходимый тип линии, его можно загрузить, щелкнув по клавише Load (Загрузка...). В появившемся окне Load or Reload Linetypes (Загрузить или обновить типы линий) выбрать нужную строчку и щелкнуть на кнопке ОК..

    Lineweight (Толщина линии) - толщина линии - устанавливается Default (По умолчанию). Требуемая толщина линии выбирается из списка, который появляется при щелчке мышью по строчке Default (По умолчанию).

    Plot Style (Стиль чертежа) - стиль чертежа - параметр связан с выбором стиля печати чертежа в зависимости от цвета примитива (в данной книге рассматриваться не будет).

    Plot (Графика) - графика - включает или отключает изображение на данном слое при печати чертежа.

    По умолчанию текущим является нулевой слой. Для установки другого слоя в качестве текущего нужно вначале щелкнуть мышью на имени этого слоя, а затем на кнопке Current (Текущий) диалогового окна.

    Для удаления слоя нужно выбрать его имя и щелкнуть на кнопке Delete (Удалить).

    В AutoCAD 2000, по сравнению с предыдущей версией, можно изменять свойства объекта или группы объектов в диалоговом окне Properties (Свойства). Для этого нужно выделить объект, щелкнуть правой кнопкой мыши по экрану и из контекстного меню выбрать опцию Properties (Свойства).

    Основное значение графических примитивов - обеспечить наличие программных средств для рисования всевозможных геометрических объектов. Условно можно разбить все графические примитивы по типу рисуемых ими графических объектов на две группы: контурные и площадные. Функции первой группы рисуют всевозможные контурные линии. Ко второй группе относятся функции, предназначенные для рисования геометрических фигур с закрашиванием ограничиваемых ими областей.

    К группе контурных графических примитивов относятся функции:

    void far line(int x1,int y1,int x2,int y2);

    void far linerel(int dx,int dy);

    void far lineto(int x,int y);

    void far rectangle(int left,int top,int right,intbottom);

    void far drawpoly(int num_points,int far *poly_points);

    void far circle(int x,int y,int radius);

    void far arc(int x,int y,int start_angle,int end_angle,int radius);

    void far ellipse(int x,int y, int start_angle,int end_angle,int x_radius,int y_radius);

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

    Функции line, linerel и lineto соединяют две точки плоскости отрезком прямой. Для первой обе соединяемые точки указываются явно своими координатами. Функции linerel и lineto в качестве первой точки используют текущую графическую позицию CP, а вторую выбирают аналогично функциям moverel и moveto, т. е. через приращения координат или по явному указанию. Все три функции пользуются системой координат графического окна. Однако им можно передать координаты любых точек, даже лежащих за пределами страницы. Функция graphresult не сообщает об ошибке, а соединяющая линия проводится правильно. Если для окна установлен режим отсечения, то части линии, выходящие за пределы окна, не заносятся в видеопамять.

    Функция rectangle рисует на странице видеопамяти контур прямоугольника по указанным координатам левого верхнего и правого нижнего угла.

    Функция drawpoly рисует ломаную линию, соединяя точки на плоскости. В первом аргументе передается количество таких точек, а второй указывает на массив целых чисел. Каждая пара чисел из этого массива интерпретируется как пара координат (x, y) очередной точки. Для того чтобы нарисовать замкнутую ломаную линию (многоугольник), первая и последняя пары элементов массива должны быть одинаковыми.

    Функция circle рисует окружность радиусом radius с центром в точке с координатами (x, y). Функция arc и ellipse вычерчивают дуги окружности и эллипса с центром в точке (x, y), соответственно ограниченные углами start_angle и end_engle. Для дуги окружности задается ее радиус radius, а для дуги эллипса радиусы по осям x_radius и y_radius. Оси эллипса всегда предполагаются параллельными осям координат страницы.

    Углы, ограничивающие дуги, выражаются в градусах и отмеряются против часовой стрелки от направления, задаваемого осью X страницы. Дуга всегда проводится от угла start_angle к углу end_angle также против часовой стрелки.

    Для функций rectangle, drawpoly, circle, arc и ellipse справедливы замечания относительно системы координат и режима отсечения, которые были сделаны относительно функций рисования линий.

    С дугами окружностей связана функция

    void far getarccoords(struct arccoordstype far *arccoords);

    Эта функция возвращает характеристики дуги окружности, построенной при последнем вызове функции arc. Характеристики дуги записываются в переменную *arccoords. Тип этой переменной определен следующим способом:

    struct arccoordstype

    int x_start, y_start, x_end, y_end;

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

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

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

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

    void far setwritemode(int mode);

    Аргумент этой функции должен принимать значение 0 (простое копирование кода атрибута пикселя в видеопамять) и 1 (операция “исключающее или”).

    void far setlinestyle(int line_style,unsigned user_pattern,int thickness);

    устанавливает характер и толщину линий геометрических объектов. Аргумент thickness воздействует на контурные графические примитивы, а аргументы line_style и user_pattern - только на кусочно-линейные.

    Аргумент thickness принимает значения NORM_WIDTH (толщина равна 1 пиксель) и THICK_WIDTH (толщина равна 3 пикселям). Аргумент linestyle задает характер рисуемой линии. Значения аргумента должны выбираться из констант перечислимого типа line_styles (например SOLID_LINE означает сплошную линию):

    enum line_styles

    SOLID_LINE=0,DOTTED_LINE,CENTER_LINE,

    DASHED_LINE,USERBIT_LINE

    Если значение аргумента line_style равно USERBIT_LINE, то это значит, что при построении кусочно-линейных примитивов будет использоваться шаблон, заданный программистом и переданный функции setlinestyle при помощи аргумента user_pattern. С помощью шаблона можно задать периодически повторяющийся рисунок линии с периодом до 16 пикселей. Если некоторый бит шаблона user_pattern равен 1, то соответствующий пиксель линии рисуется, в противном случае - нет.

    Установки, сделанные при помощи функции setlinestyle, сохраняются до нового ее вызова. Для выяснения текущей установки характеристик линий предусмотрена функция

    void far getlinesettingstype(struct linesettingstype far *line_info);

    Данная функция заносит информацию в структуру, имеющую описание

    struct linesettingstype

    unsigned upattern;

    Группа площадных графических функций имеет прототипы:

    void far bar(int left, int top, int right, int bottom);

    void far bar3d(int left, int top, int right, int bottom, int depth, int top_flag);

    void far fillpoly(int num_points, int far *poly_points);

    void far fillellipse(int x, int y, int x_radius, int y_radius);

    void far pieslice(int x, int y, int start_angle, int end_angle, int radius);

    void far sector(int x, int y, int start_angle, int end_angle, int x_ radius, int y_radius);

    void far floodfill(int x, int y, int num_color_palette);

    Функции bar и bar3d строят прямоугольники, координаты которых заданы первыми четырьмя аргументами функций и закрашивают его внутреннюю область. Функция bar не выводит внешний контур прямоугольника, а функция bar3d дополнительно обрамляет прямоугольник контура и тем же контуром дорисовывает проекцию параллелепипеда, построенного на базе этого прямоугольника. Глубина проекции задается аргументом depth, аргумент top_flag указывает, рисовать (если не нуль) или не рисовать (если нуль) верхние ребра параллелепипеда.

    Функция fillpoly получает аргументы аналогично функции drawpoly, рисует контур и заполняет его внутренность. Однако если функция drawpoly допускает незамкнутые контуры, то функция fillpoly всегда соединяет последнюю точку в полученном списке с первой, автоматически замыкая контур.

    Функция fillellipse заполняет эллипс с центром в точке (x, y) и радиусами x_radius и y_radius. Кроме того, она рисует контур эллипса.

    Функции pieslice и sector похожи тем, что обе закрашивают указанные сектора, только pieslice делает это для кругового сектора, а sector для эллиптического. Аргументы, которые им передаются, те же, что и для функций arc и ellipse соответственно. После того как сектор закрашен, рисуется его контур. В отличие от функций arc и ellipse, функции pieslice и sector строят сектор от меньшего значения угла к большему (а не от start_angle к end_angle). Из-за этого невозможно заставить функции pieslice и sector изобразить сектор, пересекающий положительное направление оси X.

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

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

    Для управления видом заполнения внутренней области служит функция

    void far setfillstyle(int pattern,int num_color_palette);

    Данная функция одновременно устанавливает тип двумерного шаблона заполнения и код заполнения (номер входа во внутреннюю палитру). Нужно отметить, что при заполнении области нет возможности выполнять побитовые логические операции между кодами шаблона и атрибутами пикселей области, т. е. всегда происходит копирование в атрибуты пикселей области соответствующих кодов шаблона. Аргумент pattern указывает на тип устанавливаемого шаблона. Существует несколько заранее определенных типов, их символические имена определяются перечислимым типом fill_patterns:

    enum fill_pattern

    EMPTY_FILL=0,SOLID_FILL,LINE_FILL,LTSLASH_FILL,

    SLASH_FILL,BKSLASH_FILL,LTBKSLASH_FILL,

    HATCH_FILL,XHATCH_FILL,INTERLEAVE_FILL,

    WIDE_DOT_FILL, CLOSE_DOT_FILL,USER_FILL

    Аргумент pattern может принимать любые значения, кроме USER_FILL. Значение этой константы используется только при обработке информации, получаемой функцией getfillsettings (см. далее).

    Шаблон условно можно представить в виде матрицы размером 8 х 8 элементов. Элементы матрицы шаблона имеют значения 0 или 1. Если элемент равен 1, то атрибуту соответствующего пикселя области будет присвоено значение num_color_palette, в противном случае атрибут пикселя получит значение кода фона.

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

    void far setfillpattern(char far *user_pattern,int num_color_palette);

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

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

    void far getfillsettings(struct fillsettingstype far *fill_info);

    void far getfillpattern(char far *user_pattern);

    Первая возвращает в область памяти по указателю fill_info информацию о текущем заполнении. Информация заносится в структуру следующего типа:

    struct fillsettingstype

    Элемент структуры pattern указывает тип шаблона (если он равен USER_FILL, то это значит, что шаблон задан пользователем), элемент color содержит код заполнения (номер входа во внутреннюю палитру). Вторая функция по переданному ей адресу записывает матрицу шаблона, установленную пользователем.

    Команды создания графических примитивов позволяют строить единые и неделимые объекты различными типами линий и разными цветами.

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

    Прямая является наиболее часто используемым графическим примитивом. Исходные элементы, с помощью которых строятся прямые, могут задаваться различными способами (табл. 1.1).

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

    Дуга окружности также может строиться по-разному, в зависимости от способа задания ее параметров (табл. 1.3).

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

    Команда Многоугольник позволяет строить правильные многоугольники с количеством сторон, например, до 1024, вписанные или описанные вокруг окружности с заданным центром.

    Команда Эллипс позволяет строить эллипс несколькими способами. В системе КОМПАС-3D LT V10 ввод эллипса осуществляется следующими командами:

    Эллипс по центру и полуосям;

    Эллипс по диагонали габаритного прямоугольника .

    Ввод кривых рассмотрим также на примере системы КОМПАС-3D LT V10.

    Команда NURBS-кривая позволяет начертить нерегулярный рациональный В-сплайн (Non-Uniform Rational B-Spline). При вводе этой кривой последовательно указываются опорные точки, возможно обращение к кнопке Замкнутый и построение соответствующих кривых (рис. 1.2). Можно задавать характеристики кривой - вес характерной точки и порядок кривой.

    Команда Кривая Безье позволяет построить кривую, которая является частным случаем NURBS-кривой. Порядок построения аналогичен рассмотренному ранее (рис. 1.2, б).

    КомандаЛоманая позволяет начертить линию, состоящую из отрезков прямых.

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

    1. Графические примитивы.

    Графические примитивы это заранее определенные элементы, которые можно поместить в чертеж при помощи одной команды. Каждый графический примитив формируется на основании геометрического описания объекта.
    Примитивы (табл.№1.) можно классифицировать:

    • односложные и составные;
    • плоские и объемные (3d).

    Таблица №1

    Имя примитивы

    Команда

    Линия (Отрезок)

    Линия конструкции (Прямая)

    Полилиния

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

    Полигон (Многоугольник)

    Овал(Кольцо)

    Мультилиния

    3DПолилиния

    Конус (Дубль)

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

    2. Свойства примитивов.

    Примитивы имеют следующие свойства:
    - Цвет (color);
    - Тип линий (linetype);
    - Масштаб типа линий;
    - Принадлежность слою;
    - Уровень и высота (elevation).

    3. Операции над примитивами

    Над примитивами можно выполнять следующие операции: Создавать, Удалять, Устанавливать свойства, Получать копии, Перемещать, Поворачивать, Отображать зеркально, Масштабировать, Штриховать, Закрашивать и др.

    4. Команды построения графических примитивов

    Рассмотрим односложные графические примитивы. Графический примитив может быть отрисован следующими способами:

    • С помощью команд вводимых их пункта строки меню Рисовать системы AutoCAD.
    • С помощью пиктограмм панели инструментов, выбирая необходимую из них щелканьем ЛКМ.
    • С помощью ввода команд с командной строки.

    4.1. Точка

    Точка (Pоint) - это один из простейших примитивов системы AutoCAD, который характеризуется тремя пространственными координатами X,Y и Z , а также атрибутами - принадлежность слою, цвет и высота.
    Для помещения точки в чертеже вводим команду Рисовать/ Точка/ Простая точка либо выбираем с помощью мыши соответствующую пиктограмму на панели инструментов.

    При этом с помощью мишки курсором задаются координаты токи которые фиксируются в строке состояния.
    В целях фиксации объектов точки могут выполнять функции "узлов".
    На экране точки можно изображать 20 различными знаками каждому из которых соответствует определенный числовой код (0-4, 32-36, 64-68, 96-100).

    Стиль точки задается с помощью команд Рисовать/ Точка/ Множественная и далее Формат/ Стиль отметок при этом появляется меню представленное на рис. 2.1.

    Рисунок 2.1. - Стиль точки

    0 · - точка в указанном месте;
    1 - ничего;
    2 + - прямой крест;
    3 X - косой крест;
    4 1 - вертикальная линия.

    Если к данному коду добавить:

    32 - рисуется окружность вокруг точки;
    64 - рисуется квадрат вокруг точки;
    96 - рисуется окружность и квадрат вокруг точки;

    Цвет можно задать с помощью команды Формат/Цвет при этом появляется меню представленное на рис. 2.2.

    4.2. Луч (Ray).

    Луч - это отрезок, один из концов которого находится в бесконечности. Этот примитив в системе AutoCAD рисуется командой Рисовать/ Луч с помощью двух точек, первая задает начало луча, вторая- его направление. При этом можно задать его атрибуты.

    Команда рисования луча:

    Command: Ray
    From point: (Из точки:)
    Through point: (Сквозь точку:)
    Through point:
    Through point:
    Through

    Координаты точек можно ввести с клавиатуры либо с помощью мыши. При этом получим изображение представленное на рис.2.2.


    Рисунок 2.2. Рисование луча

    При обрисовке примитивов можно задать цвет рисования и для некоторых (линия, луч, отрезок и др.) можно задать тип линии.

    4.3. Линия (Line).

    Линия - это часть прямой линии, задаваемая двумя крайними точками с нулевой шириной (1 пиксель). Линия является наиболее фундаментальным примитивом для любого чертежа. Для его обрисовки вводим команду Рисовать/ Линия. Линию, как любой др. примитив можно нарисовать путем выбора с помощью мыши соответствующей пиктограммы на панели инструментов.
    Команда рисования линии:
    Command: Line
    From point:
    To point:

    Координаты точек можно ввести с клавиатуры либо с помощью мыши. При этом получим изображение представленное на рис.2.3.


    Рисунок 2.3. Рисование линии

    4.4. Мультилиния (Mline)

    Мультилиния двумерная ломаная линия состоящая из нескольких параллельных отрезков (от 1 до 16) каждый из которых может иметь свои атрибуты.

    Этот примитив в системе AutoCAD рисуется либо командой меню Рисовать/ Мультилиния Формат/ Стиль Мультилиний (см. рис. 2.4), либо командой вводимой с командной строки:
    Command: Justification\Scale\Style\ указываются координаты первой точки;
    J - установка режима выравнивания;
    S - установка масштаба (ширины) мультилинии;
    ST - выбор стиля мультилинии,
    Command: To point указываются координаты точек.


    Рисунок 2.4. - Мультилиния

    4.5. Линия конструкции (Xline).

    Прямая. Линия конструкции линия с концами уходящими в бесконечность. Этот примитив в системе AutoCAD рисуется командой Рисовать/ Линия конструкции и далее м.б. задан стиль линии Формат/ Стиль линий (см. рис. 2.5).

    4.6. Полигон (Polygon Многоугольник).

    Многоугольник рисуется с помощью команды Рисовать/ Полигон (см. рис. 2.6). Для ее выполнения необходимо задать опции:

    • количество углов от 3 до 1024;
    • координаты центра (можно курсором);
    • вписанный либо описанный в окружность (I/C).


    Рисунок 2.5. - Линия конструкции


    Рисунок 2.6. - Полигон

    4.7 Прямоугольник (Rectangle)

    Прямоугольник рисуется:

    Команды rectangle, вводимой с командной строки.


    Рисунок 2.7. - Прямоугольник

    Формат команды rectangle, вводимой с командной строки.

    Command: _rectangle
    : указываются координаты угловой точки прямоугольника;
    Point or option keyword required .
    Опции: C - указать размер скоса углов прямоугольника (фаска);
    F - указать радиус округления углов;
    T - указать толщину линий;
    W - указать линий.

    Например, выполнение нижеприведенной команды рисует прямоугольник рис. 2.8.

    Command: rectangle
    Chamfer/Elevation/Fillet/Thickness/Width/: c

    First chamfer distance for rectangles <2.0000>: 10

    Second chamfer distance for rectangles <2.0000>: 10
    Chamfer/Elevation/Fillet/Thickness/Width/: e
    Elevation for rectangles <0.0000>: 40
    Chamfer/Elevation/Fillet/Thickness/Width/: f
    Fillet radius for rectangles <10.0000>: 5
    Chamfer/Elevation/Fillet/Thickness/Width/:
    Other corner: указываются координаты противоположной точки прямоугольника.


    Рисунок 2.8. – Прямоугольник с опциями

    4.8. Дуга (Arc)

    Дуга - часть окружности, которая геометрически определяется центром, радиусом и двумя центральными углами. Существует более 10 способов построения дуги (рис. 2.9). При выполнении команды в диалоге предлагается выбрать способ построения из экранного меню, один из способов предлагается по умолчанию (3-точки) (рис. 2.10).



    Рисунок 2.10. - Дуга

    4.9. Круг (Circle)

    Круг - часть плоскости ограниченная окружностью. Для построения круга используется команда Circle при этом м.б. использовано шесть способов построения (см. рис. 2.9).

    Выполнение команды, приведенной ниже рисует круг (см. рис. 2.10) .
    Command: circle
    3P/2P/TTR/

    : 100,100
    Diameter/: 100

    Command:


    Рисунок 2.10. - Круг


    Рисунок 2.9. – Диалоговое окно

    4.10 Эллипс (Ellipse)

    Эллипс рисуется:

    С помощью команды Рисовать / Эллипс (см. рис. 2.11, рис.2.12);
    - пиктограммы;

    Команды ellipse , вводимой с командной строки.


    Рисунок 2.11. – Диалоговое окно


    Рисунок 2.12 Эллипс


    Рисунок 2.13 Эллипс

    Эллипс в зависимости от выбранных опций в команде можно построить четырьмя способами:

    По центру и двум полуосям;
    - по оси и полуоси;
    - по оси и углу поворота воображаемого круга относительно оси построений;
    - по центру, длине полуоси и углу поворота воображаемого круга относительно оси построений.

    Выполнение команды, приведенной ниже рисует эллипс (см. рис. 2.13) .

    Command: _ellipse
    Arc/Center/: c
    Center of ellipse: 100,100
    Axis endpoint: 100
    /Rotation: 45

    4.11. Полилиния (Pline)

    Полилиния - ломаная линия. Этот примитив в AutoCADе рисуется командой Рисовать/ Полилиния и далее м.б. задан стиль линии Формат/ Стиль линии (см. рис. 2.14).

    Command: Pline
    From point:
    Current line-width is 0.0000 (Текущая ширина линии)
    Arc/Close/Halfwidth/Length/Undo/Width/:

    Рассмотрим опции:

    Arc (Дуга) A – переход в режим рисования дуг;
    Close (Замкни) C - Замкнуть полилинию;
    Halfwidth (Полуширина) H- Полуширина текущего сегмента;
    Length (Длина) L –Длина последующего сегмента;
    Undo (Отмени) U - отмена последнего сегмента;
    Width (Ширина) W –ширина последующего отрезка;
    :<Конечная точка лини>


    Рисунок 2.14 – Полилиния

    4.12. Фигура (Solid)

    Фигура - это часть плоскости ограниченная четырехугольником (треугольником) . Область может быть закрашенной или не закрашенной в зависимости от значения системной переменной FILLMODE (1-закраска включена, 0-отключена). Этот примитив в системе AutoCAD рисуется командой ФИГУРА (solid), с помощью четырех точек, две из них могут совпадать, последовательность точек влияет на вид фигуры. Команда дает возможность вычерчивать сплошные области путем ввода их как четырехугольных или треугольных секций.

    Сначала вводятся две крайние точки начальной грани. Затем либо две точки следующей грани, либо одну точку для задания треугольной секции. Ввод граней можно продолжать до завершения построения тела.
    Например для вычерчивается тела (см. рис. 2.15) необходимо выполнить:

    Включить режим закраски
    Command:Fill
    OFF/ON : ON
    Command: Solid
    First point: 100,200
    Second point: 200,200
    Third point: 150,250
    Fourth point:
    Third point: 100,200
    Fourth point: 200,200
    Third point: 100,100
    Fourth point: 200,100


    Рисунок 2.15. - Фигура

    4.13. Кольцо (Donut)

    С помощью команды donut введенной с командной строки можно построить кольцо.

    Пример команды donut : Command: donut
    Inside diameter <10.0000>: Second point:
    Outside diameter <20.0000>: Second point:
    Center of doughnut:


    Рисунок 2.16 Кольцо


    Рисунок 2.17 Эскиз

    4.14. Эскиз (Sktch)

    С помощью команды sktch можно рисовать эскизные линии или линии выполненные как бы от руки (реки на картах и т.д.). Перед использованием команды необходимо отключить режимы ORTO (кл.F8) и шаг (кл.F9).

    Пример команды sktch :
    Command: sketch
    Record increment <1.0000>: (Приращение)

    4.15. Штриховка

    Штриховка замкнутых областей выполняется с помощью команды Рисовать/Насечка либо клавиши панели инструментов При этом в открывшемся диалоговом окне (рис. 2.18).

    необходимо:

    Задать шаблон штриховки (клавишей Шаблон);
    - масштаб;
    - угол поворота штриховых линий;
    - выбрать точки (ЛК и ПК мыши внутри замкнутой области штрихуемого объекта)
    - во вновь открывшемся диалоговом окне щелкнуть по клавише Применить


    Рисунок 2.18. Диалоговое окно Граничная штриховка