Pixilang v3.4.7

Pixilang по русски
User avatar
NightRadio
Site Admin
Posts: 3941
Joined: Fri Jan 23, 2004 12:28 am
Location: Ekaterinburg. Russia
Contact:

Pixilang v3.4.7

Post by NightRadio »

Pixilang обновился до версии 3.4.7.
http://www.warmplace.ru/soft/pixilang/index_ru.php

Что нового:
  • добавлена новая глобальная переменная UI_SCALE, которая содержит коэффициент масштабирования интерфейса; пример использования: button_size = PPI * UI_SCALE * 0.5;
  • изменен формат константы PIXILANG_VERSION;
  • операция OP_COPY теперь доступна и для функции op_cn() (для заполнения прямоугольной области одним значением);
  • новая операция обработки данных для функции op_cn(): OP_SUB2 (вычитание с измененным порядком операндов (N - C1[ i ]));
  • новае операции обработки данных для функции op_cc(): OP_EXCHANGE (обмен значений), OP_BMUL (if C2[ i ] == 0 { C1[ i ] = 0 }), OP_COMPARE;
  • новые операции обработки данных для функций op_cc() и op_cn(): OP_COPY_LESS (копировать при условии C1[ i ] < C2[ i ]), OP_COPY_GREATER;
  • новая операция обработки данных для функции op_ccn(): OP_MUL_RSHIFT (умножение с последующим сдвигом результата);
  • теперь контейнер можно масштабировать с интерполяцией; пример: resize( img, 100, 100, PIXEL, RESIZE_INTERP2 );
  • добавлены флаги для функции resize(): RESIZE_INTERP1 (грубое масштабирование), RESIZE_INTERP2 (линейная интерполяция), RESIZE_UNSIGNED_INTERP2, RESIZE_COLOR_INTERP1, RESIZE_COLOR_INTERP2;
  • добавлена опция для load(): LOAD_FIRST_FRAME - загрузить только первый кадр анимации;
  • добавлены опции экспорта в JPEG: JPEG_TWOPASS, JPEG_H1V1, JPEG_H2V1, JPEG_H2V2; подробности использования в примере examples/graphics/save_jpeg.pixi;
  • новые функции: zlib_pack(), zlib_unpack() - для паковки/распаковки контейнера с использованием библиотеки zlib;
  • новая функция: show_memory_debug_messages( enable );
  • новые функции: color_gradient() и gradient() для рисования 2D градиента в пиксельном или любом другом контейнере;
  • новая функция: split_ycbcr() - аналогична split_rgb(), только для преобразования в/из формата YCbCr;
  • новая функция: fprintf() - форматный вывод текста в указанный поток (открытый функцией fopen() или fopen_mem());
  • новые функции: logf() - форматный вывод текста в буфер для логов (журнал событий); get_log() - получить текущий лог;
  • новые функции: set_disk0(), get_disk0(); подбробности использования в примере examples/graphics/virtual_disk.pixi;
  • новые функции: fload() и fsave() для загрузки и выгрузки из/в поток данных, открытый функцией fopen или fopen_mem;
  • новая функция: fopen_mem() - открыть файл, который находится в контейнере (в памяти);
  • новая функция: setxattr() (posix);
  • новая функция: gl_draw_arrays() - гибрид OpenGL функций glColor4ub(), glBindTexture(), glVertexPointer(), glColorPointer(), glTexCoordPointer(), glDrawArrays();
  • новая функция: gl_blend_func() - полный аналог OpenGL функции glBlendFunc();
  • добавлены константы ZLib (уровни компрессии): Z_NO_COMPRESSION, Z_BEST_SPEED, Z_BEST_COMPRESSION, Z_DEFAULT_COMPRESSION;
  • добавлены константы OpenGL для функции gl_draw_arrays(): GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES;
  • добавлены константы OpenGL для функции gl_blend_func(): GL_ONE, GL_ZERO, GL_SRC_COLOR, GL_ONE_MINUS_SRC_COLOR и т.д.;
  • новый пример (console): fopen_mem;
  • новые примеры (graphics): save_jpeg_to_memory, rotozoom4, rotozoom5, rotozoom6, ffmpeg_video_effects/zoom, log_messages, split_ycbcr, split_ycbcr2, gradient2, gradient3, zlib, fft2, gamma_correction;
  • новые примеры (graphics_opengl): primitives, blend_modes;
  • добавлены Pixilang библиотеки (папка lib): ffmpeg_video_export, ffmpeg_video_import, pixitracker_audio_engine, pseudo_hdr, gl_primitives, gamma_correction;
  • добавлена поддержка JACK Audio Connection Kit (для iOS и Linux);
  • исправлены ошибки.
needhash
Posts: 14
Joined: Sun May 27, 2012 9:14 pm

Re: Pixilang v3.4.7

Post by needhash »

Сделайте, пожалуйста, чтобы rand возвращала 32 битное число, а не 16 битное, для удобства.
needhash
Posts: 14
Joined: Sun May 27, 2012 9:14 pm

Re: Pixilang v3.4.7

Post by needhash »

Еще бывает, что забываешь поставить $ перед функцией, адрес которой в локальной переменной, он выводит ошибку, а номера строки нет(
needhash
Posts: 14
Joined: Sun May 27, 2012 9:14 pm

Re: Pixilang v3.4.7

Post by needhash »

Еще бы встроенный дебаггер, и было бы вообще круто :))

Еще пожелания:
если это возможно, чтобы выводилась ошибка при попытке чтения неинициализированной переменной;
также ошибка при попытке обращения к элементу контейнера, который неинициализирован;
цикл for, так как постоянно зависает из-за того что забыл увеличить счетчик перед continue
User avatar
NightRadio
Site Admin
Posts: 3941
Joined: Fri Jan 23, 2004 12:28 am
Location: Ekaterinburg. Russia
Contact:

Re: Pixilang v3.4.7

Post by NightRadio »

Увы, rand() 32-битным сделать не могу, так как на 16-битном уже построено много программ.
По поводу ошибки некорректного адреса - как только появится встроенный дебаггер, сразу же появятся номера строк во всех ошибках без исключения :) Просто сейчас отладочная информация о структуре исходника нигде не сохраняется - не успел реализовать.
needhash
Posts: 14
Joined: Sun May 27, 2012 9:14 pm

Re: Pixilang v3.4.7

Post by needhash »

Ну можно тогда сделать функцию rand32 или random. А что, встроенный дебаггер планируется? Вот это было бы незаменимой вещью. Веский аргумент в пользу pixilang, если выбирать между ним и другим языком.
User avatar
NightRadio
Site Admin
Posts: 3941
Joined: Fri Jan 23, 2004 12:28 am
Location: Ekaterinburg. Russia
Contact:

Re: Pixilang v3.4.7

Post by NightRadio »

Да, дебаггер планируется :)
needhash
Posts: 14
Joined: Sun May 27, 2012 9:14 pm

Re: Pixilang v3.4.7

Post by needhash »

Нашел ошибку - интерпретатор показывает неправильный номер строки с ошибкой, если в этом файле используется include.
Кстати, идея насчет отладчика, чтобы помимо чисел и строк можно было просматривать контейнеры с картинками
yourchange
Posts: 33
Joined: Tue Jan 01, 2013 5:30 pm
Location: Украина, Николаев

Re: Pixilang v3.4.7

Post by yourchange »

привет! у меня на windows mobile видно одну полоску сверху и все. пробовал менять конфиг, но без результатов(
User avatar
NightRadio
Site Admin
Posts: 3941
Joined: Fri Jan 23, 2004 12:28 am
Location: Ekaterinburg. Russia
Contact:

Re: Pixilang v3.4.7

Post by NightRadio »

needhash: спасибо, поправлю, как будет время.
yourchange: то есть, не видно даже стартового файлового диалога? Чистый черный экран с белой полоской?
yourchange
Posts: 33
Joined: Tue Jan 01, 2013 5:30 pm
Location: Украина, Николаев

Re: Pixilang v3.4.7

Post by yourchange »

почти. черный экран и мерцающая зеленая полоска.
если будет исправлено, я вряд ли смогу проверить - я уже с андроидом.
User avatar
phase
Posts: 17
Joined: Thu Dec 20, 2012 6:16 pm
Location: Хабаровск

Re: Pixilang v3.4.7

Post by phase »

Можно ли в Pixilang создать массив указателей на встроенные функции?
что то типа:
pf=new(3)
pf[0]=get_red
pf[1]=get_green
pf[2]=get_blue

При запуске такой программы выдаётся ошибка синтаксиса.
Со своими функциями нормально работает.
User avatar
NightRadio
Site Admin
Posts: 3941
Joined: Fri Jan 23, 2004 12:28 am
Location: Ekaterinburg. Russia
Contact:

Re: Pixilang v3.4.7

Post by NightRadio »

Можно ли в Pixilang создать массив указателей на встроенные функции?
нет.
Но можно сделать обертки для системных функций, типа
fn get_red2( $color ) { ret( get_red( $color ) ) }
Several light
Posts: 68
Joined: Sun Jun 28, 2009 11:07 pm

Re: Pixilang v3.4.7

Post by Several light »

Pixilang на данный момент может корректно работать 64-битными целыми числами? (функция num_to_str на данный момент сними не работает)
User avatar
NightRadio
Site Admin
Posts: 3941
Joined: Fri Jan 23, 2004 12:28 am
Location: Ekaterinburg. Russia
Contact:

Re: Pixilang v3.4.7

Post by NightRadio »

Pixilang на данный момент может корректно работать 64-битными целыми числами?
Текущая версия - нет.
Такая возможность заложена в языке, но я ее временно отключил для экономии производительности.
Post Reply