---
# System prepended metadata

title: Untitled

---

## Учебная практика 2022. Понедельник 27.06 (или Вторник 28.06). Мединец Илья Сергеевич
[TOC]
## Задание №1  
В данном задании надо было создать одиночную страницу c названием, в котором есть Ваше Имя и Фамилия, на сайте replit.com, в которой указываются мои ФИО, Название Вашей специальности,Курс и Фото в профиль.

#### Решение задания 
Создаем файли HTML ,CSS исполбзуя тег `<div>`  добавляем имя и фамилию,
с помощью тэга `<img>` подключаем фотографию
```html=11
<body>
  <p>Мединец Илья Сергеевич + Прикладная математика + Первый курс</p>
  <div>
    <img src="pic.jpg">
  </div>
</body>
```
Уменьшаем размер картинки с помощью `style.css` так она слишком большая:
```html=1
html, body {
  height: 100%;
  width: 100%;
}
img{
  height: 50%;
  width: 50%;
}
```
 
#### Ссылка на код
https://replit.com/@Illia-Sierghii1/Ilia-Miediniets#index.html

## Задание №2  
Визуализировать лошарика при помощью GLSL.

### Решение задания
Для начала мы, как и в последиющих решениях нормализируем координаты для работы в плоскости:
```glsl=4
vec2 uv = 2.0*vec2(fragCoord.xy - 0.5*iResolution.xy)/iResolution.y;
```
Закрашиваем всю плоскость белым цветом:
```glsl=6
fragColor = vec4(1.0,1.0,1.0,1.0);
```
Сразу подготовим нужные цвета:
```glsl=7
vec3 bgCol = vec3(0.3);
    vec3 blue = vec3(0.1, 0.9, 0.9);
    vec3 red = vec3(1.0, 0.1, 0.2);
    vec3 purple = vec3(0.5, 0.0, 0.5);
    vec3 orange = vec3(1.0, 0.7, 0.0);
    vec3 green = vec3(0.0, 1.0, 0.0);
    vec3 darkblue = vec3(0.0, 0.0, 1.0);
    vec3 yellow = vec3(1.0, 1.0, 0.0);
```
Для рисования круга мы будем проверять, принадлежит ли точка кругу, и если ответ положительный, будем закрашивать ее:
```glsl=22
x1 = uv.x - 0.74;
y1 = uv.y + 0.81;
r = 0.09;
if(x1*x1 + y1*y1 < r*r){
    fragColor = vec4(blue,1.0);
}
```
где r - радиус круга, а (0.74,-0,81) - координаты центра круга.
#### Ссылка на код
https://www.shadertoy.com/view/sd3BD8
## Задание №3  
Провести математическую визуализацию Буратино или сверчка на сайте shadertoy.com при помощи неявных функций в пиксельном шейдере.
### Решение задания
```glsl=1
void mainImage( out vec4 fragColor, in vec2 fragCoord )
{
    // Normalized pixel coordinates (from 0 to 1)
    vec2 uv = 2.0*vec2(fragCoord.xy - 0.5*iResolution.xy)/iResolution.y;
    
    fragColor = vec4(1.0,1.0,1.0,1.0);
    vec3 red = vec3(1.0,0.2,0.2);
    vec3 darkred = vec3(0.7,0.1,0.1);
    vec3 black = vec3(0.0,0.0,0.0);
    vec3 body = vec3(1.0,0.95,0.5);
    vec3 pink = vec3(1.0, 0.5, 0.5);
    vec3 lblue = vec3(0.0,0.6,1.0);
    
    float x1;
    float y1;
    float r;
    
    x1 = uv.x + 0.2;
    y1 = uv.y + 0.1;
    if(abs(x1)<0.4 && abs(y1)<0.4){
    fragColor = vec4(body,1.0);
    }//nose
    
    x1 = uv.x - 0.1;
    y1 = uv.y - 0.2;
    r = 0.7;
    if(x1*x1*0.5 + y1*y1*3.0 < r*r){
    fragColor = vec4(1.0,1.0,1.0,1.0);
    }//nose
    x1 = uv.x - 0.1;
    y1 = uv.y + 0.62;
    r = 0.7;
    if(x1*x1*0.5 + y1*y1*3.0 < r*r){
    fragColor = vec4(1.0,1.0,1.0,1.0);
    }//nose
    x1 = uv.x + 0.7;
    y1 = uv.y + 0.5;
    r = 0.25;
    if(x1*x1*5.0 + y1*y1 < r*r){
    fragColor = vec4(body,1.0);
    }//neck
    x1 = uv.x + 0.7;
    y1 = uv.y + 0.2;
    r = 0.35;
    if(x1*x1 + y1*y1 < r*r){
    fragColor = vec4(body,1.0);
    }//head
    
    
    x1 = uv.x + 0.55;
    y1 = uv.y + 0.15;
    r = 0.08;
    if(x1*x1 + y1*y1 < r*r){
    fragColor = vec4(black,1.0);
    }//eye
    x1 = uv.x + 0.57;
    y1 = uv.y + 0.1;
    r = 0.09;
    if(x1*x1 + y1*y1 < r*r){
    fragColor = vec4(body,1.0);
    }//eye1
    
    x1 = uv.x + 0.51;
    y1 = uv.y + 0.4;
    r = 0.08;
    if(x1*x1 + y1*y1 < r*r){
    fragColor = vec4(black,1.0);
    }//mouth
    x1 = uv.x + 0.5;
    y1 = uv.y + 0.37;
    r = 0.09;
    if(x1*x1 + y1*y1 < r*r){
    fragColor = vec4(body,1.0);
    }//mouth1
    x1 = uv.x + 0.7;
    y1 = uv.y + 0.4;
    r = 0.1;
    if(x1*x1 + y1*y1 < r*r){
    fragColor = vec4(pink,1.0);
    }//cheek
    x1 = uv.x + 0.7;
    y1 = uv.y - 0.4;
    if(abs(x1)<0.4 && abs(y1)<0.4){
    fragColor = vec4(red,1.0);
    }//hat
    x1 = uv.x + 0.25;
    y1 = uv.y - 0.85;
    r = 0.8;
    if(3.0*x1*x1 + y1*y1 < r*r){
    fragColor = vec4(1.0,1.0,1.0,1.0);
    }//hat
    x1 = uv.x + 1.15;
    y1 = uv.y - 0.85;
    r = 0.8;
    if(3.0*x1*x1 + y1*y1 < r*r){
    fragColor = vec4(1.0,1.0,1.0,1.0);
    }//hat    
    x1 = uv.x + 0.7;
    y1 = uv.y - 0.7;
    r = 0.1;
    if(x1*x1 + y1*y1 < r*r){
    fragColor = vec4(red,1.0);
    }//hat
    x1 = uv.x + 1.1;
    y1 = uv.y - 0.03;
    r = 0.03;
    if(x1*x1 + y1*y1 < r*r){
    fragColor = vec4(red,1.0);
    }//hat
    x1 = uv.x + 0.3;
    y1 = uv.y - 0.03;
    r = 0.03;
    if(x1*x1 + y1*y1 < r*r){
    fragColor = vec4(red,1.0);
    }//hat
    x1 = uv.x + 0.7;
    y1 = uv.y + 1.0;
    r = 0.35;
    if(2.0*x1*x1 + y1*y1 < r*r){
    fragColor = vec4(red,1.0);
    }//body
    x1 = uv.x + 0.5;
    y1 = uv.y + 0.9;
    r = 0.05;
    if(2.0*x1*x1 + y1*y1 < r*r){
    fragColor = vec4(1.0,1.0,1.0,1.0);
    }//button
     x1 = uv.x + 0.55;
    y1 = uv.y + 0.8;
    r = 0.05;
    if(2.0*x1*x1 + y1*y1 < r*r){
    fragColor = vec4(1.0,1.0,1.0,1.0);
    }//button
    x1 = uv.x + 0.55;
    y1 = uv.y + 0.25;
    r = 0.03;
    if(9.0*x1*x1 + y1*y1 < r*r){
    fragColor = vec4(lblue,1.0);
    }//tear
    x1 = uv.x + 0.55;
    y1 = uv.y + 0.28;
    r = 0.02;
    if(x1*x1 + y1*y1 < r*r){
    fragColor = vec4(lblue,1.0);
    }//tear
    
    // Output to screen
}
```
#### Ссылка на код
https://www.shadertoy.com/view/7s3fDH
## Задание №4  
Провести математическую визуализацию своего имени и фамилии на сайте shadertoy.com при помощи неявных функций в пиксельном шейдере.
### Решение задания
```glsl=1
void mainImage( out vec4 fragColor, in vec2 fragCoord )
{
    // Normalized pixel coordinates (from 0 to 1)
    vec2 uv = 2.0*vec2(fragCoord.xy - 0.5*iResolution.xy)/iResolution.y;
    
    fragColor = vec4(1.0,1.0,1.0,1.0);
    vec3 black = vec3(0.0,0.0,0.0);
    
    float x1;
    float y1;
    float r;
    //и
    x1 = uv.x + 1.5;
    y1 = uv.y - 0.8;
    if(abs(x1)<0.01 && abs(y1)<0.11){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 1.48;
    y1 = uv.y - 0.71;
    if(abs(x1)<0.02 && abs(y1)<0.02){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 1.45;
    y1 = uv.y - 0.76;
    if(abs(x1)<0.01 && abs(y1)<0.03){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 1.43;
    y1 = uv.y - 0.80;
    if(abs(x1)<0.01 && abs(y1)<0.01){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 1.41;
    y1 = uv.y - 0.84;
    if(abs(x1)<0.01 && abs(y1)<0.03){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 1.38;
    y1 = uv.y - 0.89;
    if(abs(x1)<0.02 && abs(y1)<0.02){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 1.36;
    y1 = uv.y - 0.8;
    if(abs(x1)<0.01 && abs(y1)<0.11){
    fragColor = vec4(black,1.0);
    }
    
    
    //л
    x1 = uv.x + 1.3;
    y1 = uv.y - 0.81;
    if(abs(x1)<0.01 && abs(y1)<0.1){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 1.31;
    y1 = uv.y - 0.71;
    if(abs(x1)<0.02 && abs(y1)<0.02){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 1.25;
    y1 = uv.y - 0.9;
    if(abs(x1)<0.05 && abs(y1)<0.01){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 1.21;
    y1 = uv.y - 0.80;
    if(abs(x1)<0.01 && abs(y1)<0.11){
    fragColor = vec4(black,1.0);
    }
    
    
    //ь
    x1 = uv.x + 1.15;
    y1 = uv.y - 0.80;
    if(abs(x1)<0.01 && abs(y1)<0.11){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 1.1;
    y1 = uv.y - 0.7;
    if(abs(x1)<0.05 && abs(y1)<0.01){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 1.1;
    y1 = uv.y - 0.8;
    if(abs(x1)<0.05 && abs(y1)<0.01){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 1.06;
    y1 = uv.y - 0.75;
    if(abs(x1)<0.01 && abs(y1)<0.05){
    fragColor = vec4(black,1.0);
    }
    
    
    //я
    x1 = uv.x + 1.0;
    y1 = uv.y - 0.86;
    if(abs(x1)<0.01 && abs(y1)<0.05){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.95;
    y1 = uv.y - 0.9;
    if(abs(x1)<0.05 && abs(y1)<0.01){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.9;
    y1 = uv.y - 0.80;
    if(abs(x1)<0.01 && abs(y1)<0.11){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.95;
    y1 = uv.y - 0.82;
    if(abs(x1)<0.05 && abs(y1)<0.01){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.92;
    y1 = uv.y - 0.8;
    if(abs(x1)<0.01 && abs(y1)<0.02){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.94;
    y1 = uv.y - 0.76;
    if(abs(x1)<0.01 && abs(y1)<0.02){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.96;
    y1 = uv.y - 0.72;
    if(abs(x1)<0.01 && abs(y1)<0.02){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.98;
    y1 = uv.y - 0.7;
    if(abs(x1)<0.01 && abs(y1)<0.01){
    fragColor = vec4(black,1.0);
    }
    
    
    //м
    x1 = uv.x + 0.7;
    y1 = uv.y - 0.80;
    if(abs(x1)<0.01 && abs(y1)<0.11){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.67;
    y1 = uv.y - 0.89;
    if(abs(x1)<0.02 && abs(y1)<0.02){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.65;
    y1 = uv.y - 0.85;
    if(abs(x1)<0.02 && abs(y1)<0.02){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.62;
    y1 = uv.y - 0.81;
    if(abs(x1)<0.01 && abs(y1)<0.04){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.59;
    y1 = uv.y - 0.85;
    if(abs(x1)<0.02 && abs(y1)<0.02){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.56;
    y1 = uv.y - 0.89;
    if(abs(x1)<0.02 && abs(y1)<0.02){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.54;
    y1 = uv.y - 0.80;
    if(abs(x1)<0.01 && abs(y1)<0.11){
    fragColor = vec4(black,1.0);
    }
    
    
    //е
    x1 = uv.x + 0.48;
    y1 = uv.y - 0.80;
    if(abs(x1)<0.01 && abs(y1)<0.11){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.42;
    y1 = uv.y - 0.9;
    if(abs(x1)<0.05 && abs(y1)<0.01){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.42;
    y1 = uv.y - 0.7;
    if(abs(x1)<0.05 && abs(y1)<0.01){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.42;
    y1 = uv.y - 0.8;
    if(abs(x1)<0.05 && abs(y1)<0.01){
    fragColor = vec4(black,1.0);
    }
    
    
    //д
    x1 = uv.x + 0.30;
    y1 = uv.y - 0.72;
    if(abs(x1)<0.01 && abs(y1)<0.03){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.24;
    y1 = uv.y - 0.74;
    if(abs(x1)<0.05 && abs(y1)<0.01){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.18;
    y1 = uv.y - 0.72;
    if(abs(x1)<0.01 && abs(y1)<0.03){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.28;
    y1 = uv.y - 0.83;
    if(abs(x1)<0.01 && abs(y1)<0.08){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.20;
    y1 = uv.y - 0.83;
    if(abs(x1)<0.01 && abs(y1)<0.08){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.24;
    y1 = uv.y - 0.90;
    if(abs(x1)<0.05 && abs(y1)<0.01){
    fragColor = vec4(black,1.0);
    }
    
    
    //и
    x1 = uv.x + 0.12;
    y1 = uv.y - 0.8;
    if(abs(x1)<0.01 && abs(y1)<0.11){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.10;
    y1 = uv.y - 0.71;
    if(abs(x1)<0.02 && abs(y1)<0.02){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.07;
    y1 = uv.y - 0.76;
    if(abs(x1)<0.01 && abs(y1)<0.03){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.05;
    y1 = uv.y - 0.80;
    if(abs(x1)<0.01 && abs(y1)<0.01){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x + 0.03;
    y1 = uv.y - 0.84;
    if(abs(x1)<0.01 && abs(y1)<0.03){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x;
    y1 = uv.y - 0.89;
    if(abs(x1)<0.02 && abs(y1)<0.02){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x - 0.02;
    y1 = uv.y - 0.8;
    if(abs(x1)<0.01 && abs(y1)<0.11){
    fragColor = vec4(black,1.0);
    }
    
    
    //н
    x1 = uv.x - 0.08;
    y1 = uv.y - 0.8;
    if(abs(x1)<0.01 && abs(y1)<0.11){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x - 0.14;
    y1 = uv.y - 0.8;
    if(abs(x1)<0.05 && abs(y1)<0.01){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x - 0.2;
    y1 = uv.y - 0.8;
    if(abs(x1)<0.01 && abs(y1)<0.11){
    fragColor = vec4(black,1.0);
    }
    
    
    //е
    x1 = uv.x - 0.26;
    y1 = uv.y - 0.80;
    if(abs(x1)<0.01 && abs(y1)<0.11){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x - 0.32;
    y1 = uv.y - 0.9;
    if(abs(x1)<0.05 && abs(y1)<0.01){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x - 0.32;
    y1 = uv.y - 0.7;
    if(abs(x1)<0.05 && abs(y1)<0.01){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x - 0.32;
    y1 = uv.y - 0.8;
    if(abs(x1)<0.05 && abs(y1)<0.01){
    fragColor = vec4(black,1.0);
    }
    
    
    //ц
    x1 = uv.x - 0.42;
    y1 = uv.y - 0.80;
    if(abs(x1)<0.01 && abs(y1)<0.11){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x - 0.48;
    y1 = uv.y - 0.7;
    if(abs(x1)<0.05 && abs(y1)<0.01){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x - 0.54;
    y1 = uv.y - 0.80;
    if(abs(x1)<0.01 && abs(y1)<0.11){
    fragColor = vec4(black,1.0);
    }
    x1 = uv.x - 0.56;
    y1 = uv.y - 0.68;
    if(abs(x1)<0.01 && abs(y1)<0.03){
    fragColor = vec4(black,1.0);
    }
}
```
#### Ссылка на код
https://www.shadertoy.com/view/fddfD8