1. Пользоваться форумом на планшетах и телефонах стало удобнее благодаря Tapatalk

Апликация с битмапами

Тема в разделе "MAXScript", создана пользователем ARToman, 6 дек 2008.

Модераторы: Savin Denis
  1. ARToman

    ARToman Пользователь сайта

    С нами с:
    19.01.2008
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    2
    Помогите написать скрипт, который склеивает 2 битмапа в один (пример см. на картинках)
    Заранее за помощь спасибо
     

    Вложения:

    • 1001344.jpg
      1001344.jpg
      Размер файла:
      24,2 КБ
      Просмотров:
      64
    • 1001345.jpg
      1001345.jpg
      Размер файла:
      21,1 КБ
      Просмотров:
      57
    • 1001346.jpg
      1001346.jpg
      Размер файла:
      28,5 КБ
      Просмотров:
      53
  2. ARToman

    ARToman Пользователь сайта

    С нами с:
    19.01.2008
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    2
    Более понятный вариант примеров (с белым фоном неудачно получилось)
     

    Вложения:

    • 1001824.jpg
      1001824.jpg
      Размер файла:
      24,2 КБ
      Просмотров:
      48
    • 1001825.jpg
      1001825.jpg
      Размер файла:
      85,3 КБ
      Просмотров:
      69
    • 1001826.jpg
      1001826.jpg
      Размер файла:
      88,7 КБ
      Просмотров:
      69
  3. Savin Denis vip

    Savin Denis Moderator Команда форума

    С нами с:
    05.05.2005
    Сообщения:
    1.633
    Симпатии:
    0
    Баллы:
    210
    Сделай новый битмап нужной ширины и наложи свои функцией pasteBitmap

    Для чего это ? в общем макс скрипт не предназначен для пост обработки, это задача уже другого софта.
     
  4. Protactinium

    Protactinium Пользователь сайта

    С нами с:
    03.03.2006
    Сообщения:
    27
    Симпатии:
    0
    Баллы:
    2
    Че-то я не нашел функцию pasteBitmap...
    Может имелась ввиду функция copy?

    Впрочем можно сделать такой скрипт влоб, перебирая изображения построчно.
    Так например:

    dir = sysInfo.currentdir
    bmp1 = openBitMap (dir + "\bmp1.bmp")
    bmp2 = openBitMap (dir + "\bmp2.bmp")
    bmp3 = bitmap (bmp1.width+bmp2.width) bmp1.height filename:(dir + "\bmp3.bmp")
    for y=1 to bmp1.height do (
    bmp3_line = getPixels bmp1 [0,y-1] bmp1.width
    bmp2_line = getPixels bmp2 [0,y-1] bmp2.width
    join bmp3_line bmp2_line
    setPixels bmp3 [0,y-1] bmp3_line
    ) -- end for
    save bmp3
    close bmp1
    close bmp2
    close bmp3

    p.s. Скрипт не проверяет соответствие размеров битмапов.
     
  5. Savin Denis vip

    Savin Denis Moderator Команда форума

    С нами с:
    05.05.2005
    Сообщения:
    1.633
    Симпатии:
    0
    Баллы:
    210
    Значит у тебя макс еще младше чем 2008, в этом случае ставим AVG.
     
  6. Protactinium

    Protactinium Пользователь сайта

    С нами с:
    03.03.2006
    Сообщения:
    27
    Симпатии:
    0
    Баллы:
    2
    Ага, смотрел в справке 7-ого)
    в 2008 нашел...
     
  7. ARToman

    ARToman Пользователь сайта

    С нами с:
    19.01.2008
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    2
    Я уже пытался тож через цикл по пикселю, а нет ли чего-нить попроще? картинки с большим разрешением кушают много времени:)
     
Модераторы: Savin Denis

Поделиться этой страницей