
    Новые сообщения [новые:0]
  
  Дайджест 
  
  Горячие темы
    Избранное [новые:0]
  
Форумы 
 
Пользователи 
Статистика 
Статистика нагрузки 
    Мод. лог 
  
  Поиск 
  | 
| 
 05.03.2014, 14:24 
 | 
|||
|---|---|---|---|
  
  | 
|||
Разрезать прямоугольник на части  | 
|||
| 
 #18+ 
  
    
  Всем привет! На форме имеются PictureBox, Label и 3 Textbox'a, в которые будут вводиться размеры: 1) Textbox1 = ширина листа (Wmat); 2) Textbox2 = ширина объекта (Wobj); 3) Textbox3 = длина объекта (Lobj). PictureBox и есть ширина листа (Wmat). Длина его не имеет значения. Label выводит количество полученных частей. Задача: при вводе Wobj и Lobj в PictureBox рисуется прямоугольник по введённым размерам и, если его Wobj > Wmat, появляется MsgBox: "Ширина изображения больше ширины материала. Повернуть или разрезать?" Если нажимаем "Повернуть", то прямоугольник разворачивается вдоль листа, а если "Разрезать", то режется на части, равные ширине листа, т.е. Wmat. Далее эти части располагаются одна за другой вдоль длины листа, а последней становится остаток. (см. рисунок) Вопрос: каким способом это можно реализовать? Думаю, что должно использоваться что-то, типа, Do While... Loop, т.е. сравнивается значение Wobj с Wmat. Если оно больше, то переменная Y = Wobj - Wmat и назначается уже в качестве Wobj для первой части, потом для второй и так далее, пока не станет меньше или равна Wmat. Результат деления мы видим в графическом виде, а количество частей - в Label. Подскажите, пожалуйста, с какой стороны подступиться? Спасибо. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 05.03.2014, 14:25 
 | 
|||
|---|---|---|---|
  
  | 
|||
Разрезать прямоугольник на части  | 
|||
| 
 #18+ 
  
    
  вот рисунок: ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 05.03.2014, 14:31 
 | 
|||
|---|---|---|---|
  
  | 
|||
Разрезать прямоугольник на части  | 
|||
| 
 #18+ 
  
    
  Собственно, сложность не в самом коде вычисления переменной и назначения её в качестве следующей ширины, а в размещении прямоугольников один за другим в PictureBox. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 05.03.2014, 14:37 
 | 
|||
|---|---|---|---|
Разрезать прямоугольник на части  | 
|||
| 
 #18+ 
  
    
  Shaman Weederсложность ... в размещении прямоугольников один за другим в PictureBox. В чём именно? посчитать, где рисовать? или собственно в рисовании? А, может, проще тупо посчитать размеры/координаты, и динамически добавлять да в нужных местах формы показывать лабелы без текста, нужного цвета? Нафиг тут пикчербокс? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 05.03.2014, 14:42 
 | 
|||
|---|---|---|---|
  
  | 
|||
Разрезать прямоугольник на части  | 
|||
| 
 #18+ 
  
    
  AkinaShaman Weederсложность ... в размещении прямоугольников один за другим в PictureBox. В чём именно? посчитать, где рисовать? или собственно в рисовании? А, может, проще тупо посчитать размеры/координаты, и динамически добавлять да в нужных местах формы показывать лабелы без текста, нужного цвета? Нафиг тут пикчербокс? Вполне возможно... Посчитать-то не трудно! Возникла проблема с рисованием прямоугольников: первый рисуется нормально, а второй со сдвигом на значение Lobj рисуется не правильно - меньше, чем задано. Не пойму почему. Возможно из-за того, что координаты двух углов первого прямоугольника совпадают с координатами углов второго... ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 05.03.2014, 15:15 
 | 
|||
|---|---|---|---|
Разрезать прямоугольник на части  | 
|||
| 
 #18+ 
  
    
  Скорее из-за единиц измерения. Масштабируйте всё в пикселы... ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
  | 

start [/forum/topic.php?fid=60&mobile=1&tid=2156478]:  | 
    0ms | 
get settings:  | 
    9ms | 
get forum list:  | 
    15ms | 
check forum access:  | 
    4ms | 
check topic access:  | 
    4ms | 
track hit:  | 
    62ms | 
get topic data:  | 
    12ms | 
get forum data:  | 
    3ms | 
get page messages:  | 
    45ms | 
get tp. blocked users:  | 
    2ms | 
| others: | 233ms | 
| total: | 389ms | 

    | 0 / 0 | 

    Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
    
    
    «На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
    
    
    ... ля, ля, ля ...