Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Інструменти малювання






Методи, відображення об'єкту Graphics використовують перо або пензль заданого кольору, товщини, стилю і деякі інші об'єкти.

Об'єкт Color і його методи. Об'єкт Color зберігає 32-розрдяне значення кольору. Колір задають за допомогою чотирьох 8-розрядних компонент: alpha, red, green, blue. Компоненти приймають значення від 0 до 255. Компоненти red, green, blue описують інтенсивність відповідно червоного, зеленого і синього кольорів. Параметр alpha задає ступніь прозорості кольору (0 - повністю прозорий колір, 255 - непрозорий колір). Екземпляр об'єкту Color створю один з наступних конструкторів: Сolor(), Color(a, r, g, b), Color(argb), Color(r, g, b).

Методи:

- GetA, GetB, GetG i GetR повертають значення відповідно компонент alpha, blue, green i red об'єкту Color.

- GetValue повертає ARGB-значення кольору об'єкту Color.

- MakeARGB створює 32-розрядне ARGB-значення кольору об'єкту Color.

- SetValue встановлює ARGB-значення кольору об'єкту Color.

- SetFromCOLORREF використовує значення типу COLORREF для встановлення ARGB-значення кольору об'єкту Color.

- ToCOLORREF перетворює ARGB-значення кольору об'єкту Color в GDI COLORREF-значення.

Об'єкт Pen і його методи. Об'єкт Pen (перо) використовують для малювання ліній і прямокутників. Він має два конструктори - Pen(brush, width) i Pen(color, width). Параметр width за замовчуванням дорівнює 1.0. Перший конструктор створює об'єкт Pen, який для малювання ліній використовує пензль brush і товщину ліній

Width. Другий конструктор створює об'єкт Pen кольору color і товщини ліній width.

Методи:

- Clone - створює копію об'єкту Pen і повертає вказівник на створений об'єкт.

- GetAlignment - повертає значення використовуваного об'єктом Pen стилю вирівнювання.

- GetBrush - повертає вказівник на використовуваний об'єктом Pen пензль.

- GetColor - записує в зімнну color значення кольору об'єкту Pen.

- GetCompoundArray - записує в масив compoundArray масив даних складової прямої лінії об'єкту Pen.

- GetCompoundArrayCount - повертає кількість елементів в масиві складової прямої.

- GetCustomEndCap - обирає вказівник на потчоний об'єкт CustomLineCap, який малює завершення об'єкту Pen.

- GetCustomStartCap - обирає вказівник на поточний об'єкт CustomLineCap, який малює початок об'єкту Pen.

- GetDashCap - повертає стиль рисочки об'єкту Pen.

- GetDashOffset - повертає відстань від початку штрихової лінії до першого пробілу.

- GetDashPattern - обирає масив з count даних dashArray штрихової лінії об'єкту Pen.

- GetDashPatternCount - повертає кількість елементів штрихової лінії.

- GetDashStyle - повертає стиль рисочок штрихової лінії об'єкту Pen.

- GetEndCap - повертає стилькінця лінії об'єкту Pen.

- GetLastStatus - повертає статус завершення останнього виклику деякого методу об'єкту Pen.

- GetLineJoin - повертає стиль з'єднання ліній об'єкту Pen.

- GetMitterLimit - повертає величину, яка обмежує область з'єднань ліній.

- GetPenType - повертає тип об'єкту Pen.

- GetStartCap - повертає стиль початку лінії об'єкту Pen.

- GetTransform - обирає матрицю перетворення фізичної системи.

- GetWidth - повертає товщину ліній об'єкту Pen.

- ResetTransform - перетворює матрицю перетворення фізичної системи координат об'єкту Pen в одиничну матрицю.

- RotateTransform - перемножує матрицю перетворення фізичної системи координат відображуваного елементу і матрицю повороту на кут в angle градусів за годинниковою стрілкою

- ScaleTransform - перемножує матрицю перетворення фізичної системи координат відображуваногго елементу і матрицю масштабування.

- SetAlignmnet - встановлює стиль вирівнювання пера відносно лінії малювання.

- SetBrush - встановлює пензль для об'єкту Pen.

- SetColor - встановлю колір об'єкту Pen.

- SetCompoundArray - встановлює масив з count елементів складової прямої.

- SetCustomEndCap - встановлює стиль кінця лінії об'єкту Pen.

- SetCustomStartCap - встановлює стиль початку лінії об'єкту Pen.

- SetDashCap - встановлює стиль рисочок штрихової лінії.

- SetDashOffset - встановлює відстань від точки початку штрихової лінії до точки початку першої рисочки.

- SetDashPattern - встановлює масив з count довжин рисочок і пробілів штрихової лінії.

- SetDashStyle - встановлює стиль штрихової лінії.

- SetEndCap - встановлює стиль кінця лінії.

- SetLineCap - встановлює стилі початку, кінця ліній, а також рисочок штрихових ліній.

- SetLineJoin - встановлює стиль з'єднання кінців ліній.

- SetMitterLimit - встановлює величину обмеження області з'єднання кінців ліній.

- SetStartCap - встановлює стиль початку лінії.

- SetTransform - встановлює матрицю перетворення фізичних величин.

- SetWidth - встановлює товщину пера.

Об'єкт Brush і його методи. Цей клас є абстрактним класом, основою більш досконалих пензлей. Він має всього 3 методи:

- Clone - повертає копію існуючого пензля.

- GetLastStatus - повертає статус звершення останнього виклику деякого методу об'єкта Brush.

- GetType - повертає тип пензля у вигляді константи.

Клас SolidBrush і його методи. Цей клас визначає об'єкт Brush одного суцільного кольору. Він має єдиний конструктор SolidBrush(const Color& color), який створює пензль суцільного кольору. Він наслідує методи класу Brush і має власні 2 методи:

- GetColor - обирає колір пензля;

- SetColor - встановлює колір пензля.

Клас HatchBrush і його методи. Цей клас визначає штрихований об'єкт Brush. Має єдиний конструктор: HatchBrush(HatchStyle hatchStyle, const Color& foreColor, const Color& backColor), який створює пензль з кольором фону backColor, кольором ліній foreColor та стилем ліній hatchStyle. Він наслідує методи класу Brush і має власні 3 методи:

- GetBackgroundColor - обирає колір фона пензля;

- GetForegroundColor - обирає колір ліній пензля;

- GetHatchStyle - повертає стиль пензля у вигляді константи.

Клас LinearGradientBrush і його методи. Цей клас визначає пензль зі змінним кольором, де колір поступово змінюється від початкової гарничної лінії до кінцевої гарничної лінії. Граничні ліні паралельні одна одній, а градієнт кольору їм перпендикулярний.

Він має 6 конструкторів. Різниця між ними полягає в способі задання початкової і кінцевої точок градієнту. Найпростіший з них: LinearGradientBrush(const Point& point1, const Point& point2, const Color& color1, const Color& color2) створює об'єкт з вказанням почтакових і кінцевих точок і кольорів градієнту кольору.

Він наслідує методи класу Brush і має свої 15 методів:

- SetBlend - встановлює фактори і позиції змішування градієнту;

- SetBlendBellShape - встановлює колоколоподібну криву змішування градієнту.

- SetBlendTriangularShape - встановлює трикутну криву змішування градієнту.

- SetGammaCorrection - вказує, застосовувати чи ні гамма-корекцію для пензля.

- SetInterpolationColors - встановлює кольори і позиції для змішування градієнту шляхом інтерполяції.

- SetLinearColors - встановлює початковий і кінцевий кольори градієнту.

- SetWrapMode - встановлює режим покриття поверхні пензлем.

Клас PathGradientBrush і його методи. Об'єкт PathGradientBrush описує атрибути градієнту кольору і шлях, пересуваючись яким змінюється колір. До атрибутів градієнту в цьому випадку належать граничний шлях, центральна точка і колір цієї точки. При зафарбовуванні колір замкненої фігури поступово змінюється в усіх напрямках від центральної точки до граничного шляху. Цей об'єкт має 3 конструктора. Один з них: PathGradientBrush(const Point* points, INT count, WrapMode wrapMode) створює пензль на базі шляху, заданому масивом count точок points.

Він наслідує методи класу Brush і має власні 32 методи:

- GetBlend - обирає count елементів масиву змішування кольорів blendFactors в позиціях blendPositions.

- SetBlend - встановлює сount елементів масивів blendFactors i blendPositions.

- GetBlendCount - повертає кількість параметрів змішування кольорів.

- GetCenterColor - обирає значення кольору в центральній точці.

- SetCenterColor - встановлює значення кольору в центральній точці.

- GetFocusScales - обирає показники масштабування центральної точки.

- SetFocusScales - встановлює показники масштабування вздовж вісів Х і У.

- GetGammaCorrection - повертає значення TRUE, якщо гамма-корекцію ввімкнено.

- SetGammaCorrection - встановлює гамма-корекцію.

- GetInterpolationColors - обирає масиви значень передвизначених когльорів і точок вузлів інтерполяції.

- SetInterpolationColors - встановлює масиви значень передвизначених когльорів і точок вузлів інтерполяції.

- GetSurroundColors - обирає масив з кольорів елементів шляху.

- SetSurroundColors - встановлює кольори елементів межуючого шляху.

Клас TextureBrush і його методи. Цей клас описує об'єкт Brush, який для зафарбовування використовує об'єкт Image. Він має 7 конструкторів, які розрізняються способом вирізання прямокутної частини зображення. Один з них: TextureBrush(Image* image, WrapMode wrapMode, INT dstX, INT dstY, INT dstWidth, INT dstHeight) створює об'єкт TextureBrush на основі об'єкту image, режиму wrapMode і координат.

Клас TextureBrush наслідує методи класу Brush і має власні 10 методів. Сутність методу полягає в масштабуванні та обертанні пензля. Один з них - SetTransform - встановлює матрицю перетворення пензля.

Об'єкт Font і його методи. Клас Font описує сімейство, висоту, розмір і стиль (або комбінацію стилів) шрифта. Він має 6 конструкторів. Розглянемо 2 відмінних по суті конструктори:

Font(HDC hdc); - створює об'єкт Font на базі шрифта контексту hdc з GDI;

Font(const FontFamily* family, REAL emSize, INT style, Unit unit); - створює об'єкт Font на базі об'єкту family класу FontFamily, висоти emSize, стилю style і одиниці вимірювання unit шрифта.

Клас Font має 11 методів:

- Clone - створює копію об'єкту Font.

- GetFamily - обирає об'єкт family класу FontFamily шрифта.

- GetHeight - повертає висоту шрифта в пікселях або в одиницях об'єкту Graphics.

- GetSize - повертає розмір шрифта, відповідний параметру emsize другого конструктора.

- GetStyle - повертає стиль шрифта.

- GetUnit - повертає значення параметра unit для шрифта.

- IsAvailable - повертає значення TRUE, якщо шрифт створено успішно.

Клас Image і його методи. Клас Image містить методи завантаження і зберігання растрових і веткорних (метафайли) зображень. Об'єкт Image можна створювати з різного типу файлів, включаючи BMP, ICON, GIF, JPEG, Exif, PNG, TIFF, WMF, EMF. Він має 2 конструктори, які відрізняються способом завантаження зображення. Конструктор завантаження з файлу: Image(const WCHAR* filename, BOOL useEmbeddedColorManagement); створює об'єкт Image з зображення, яке зберігається в файлі filename.

Має 37 методів:

- Clone - створює копію об'єкту Image.

- GetAllPropertyItems - обирає в буфер метадані об'єкту Image.

- GetFrameCount - повертає кількість кадрів об'єкту Image.

- GetFrameDimensionsCount - повертає розмір кадру в об'єкті Image.

- GetPixelFormat - повертає формат пікселя об'єкту Image.

- GetPropertyCount - повертає кількість метаданих об'єкту Image.

- GetHeight - повертає кількість пікселів об'єкту Image по вертикалі (висоту).

- GetPropertyIdList - обирає список ідентифікаторів властивостей метаданих об'єкту Image.

- GetType - повертає тип об'єкту Image.

- RotateFlip - повертає за годинниковою стрілкою і дзеркально відображає зображення.

- Save - записує зображення в файл.

- SaveAdd - додає кадр в файл, описаний в попередньому виклику метода Save.

- SelectActiveFrame - обирає кадр, вказаний параметрами, об'єкту Image.

 


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.011 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал