Circuits.CC

Публичный форум для http://www.nedopc.org/nedopc

Moderator: Shaos

User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Circuits.CC

Post by Shaos »

Shaos wrote:Через 6.5 лет выкатываю очередную версию v0.3 :mrgreen:

http://Circuits.CC

Из нового - AJAX+VM движок Rgrid.js (наследник Webitable+Weberta), серверная часть на PHP+MySQL...
Вовремя я оказывается с SQLite слез :)

http://safe.cnews.ru/news/top/2019-05-14_v_populyarnejshej_subd_nashlas_dyracherez_kotoruyu
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Circuits.CC

Post by Shaos »

Предполагаемый набор фич, которые надо добавить:

- возможность создавать личные кабинеты (которые должны позволять редактировать только хозяину);
- возможность пополнять пользовательскую библиотеку (должна быть видима всем);
- добавление элементов библиотеки на сервере, а не так как сейчас - поклеточно из браузера;
- отмена последнего действия (Undo);
- автоматическое рисование линий (юзер только указывает начальную и конечную точки);
- подсветка цепей по клику тремя разными цветами (серым, розовым или бирюзовым):

Image

Инвертированный зеленый все также будет использоваться только для выделенных областей (ну и в меню слева).

Подсветку цепей можно сделать приложением-роботом ( будет выбираться из списка приложений наряду с тетрисом ; )

А рисование линий (как и добавление из библиотеки) будет осуществляться PHP-скриптом на стороне сервера (путем запуска бинарника скомпилированного из программы на сях)...
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Circuits.CC

Post by Shaos »

Сейчас с выделенной областью можно сделать только одну вещь - скопировать во временную библиотеку /Lib/Clipboard (содержимое которой исчезает при перезагрузке страницы). При этом выскакивает сообщение "Do you want to add this object to your local library?" с текстовым полем, из которого можно при желании скопипастить копируемое в текстовом виде для дальнейшего использования по своему усмотрению либо наоборот - подменить на новое содержимое - тогда в клиборад добавится то, что вставлено юзером в текстовое поле. Наверное надо разделить эти 3 действия:

- копирование в локальную библиотеку (без сообщения);
- экспорт библиотечного компонента в текстовом виде;
- добавление своего библиотечного компонента через импорт текста.

Кроме того можно добавить другие действия с выделенной областью - например сохранение в виде текстового файла, сохранение в виде картинки, генерацию герберов и т.д. (либо делать это уже из библиотеки?)

P.S. Если сохранить в виде текста, то некоторые символы (из первых 32 и последних 16) подменятся - вот например для сравнения первые две строчки нашей ASCII таблицы и стандартной досовской:
You do not have the required permissions to view the files attached to this post.
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Circuits.CC

Post by Shaos »

Вот наверное закладки надо так сделать:
ccc-new.gif
т.е. Sel превратится в SELECT, Copy в + ну и Library будет большими буквами написано (также в списке библиотек появится LIB/APPLICATIONS, где будут находится роботы-приложения для запуска в браузере).

При кликании в SELECT более одного раза оно будет подменяться на стиль линии:
ccc-lines.gif
В таком случае вместо выбора на поле области для копирования, оно будет рисовать линию в выбранном стиле (по тем же двум кликам) - как идея? :oidea:

P.S. Надо же ещё куда-то UNDO засунуть - может тогда вот так?
ccc-new-help.gif
При выборе закладки LIBRARY появляется список библиотек как сейчас, но в самом низу окна будут ещё 3 кнопки - кнопка выбора линии для рисования, Undo и Help (все три запускают некие серверные активности).

P.P.S. Или всё-таки Line высвечивать на месте Select, а внизу вставить скажем листание списка библиотек?...
ccc-new-pages.gif
You do not have the required permissions to view the files attached to this post.
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Circuits.CC

Post by Shaos »

Или лучше так:
ccc-new-pages2.gif
Ссылка на Help всё равно будет слева в обычном HTTP-шном меню (вместе с линками на пользовательские комнаты)
You do not have the required permissions to view the files attached to this post.
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Circuits.CC

Post by Shaos »

Это "скрытая" фича - если в палитре символов и в меню ничего не выбрано, то тыканье в клетку покажет попап с координатами клетки, значением в клетке и номером поколения в котором эта клетка была последний раз обновлена :)

Чтобы попасть в "секретную" область, то надо выбрать символ (неважно какой) и кликнуть на край куда хотим уйти - cудя по скрину перескок вниз таки произошёл :)

Далее чтобы рисовать, надо снова выбрать символ в палитре ( сразу после перескока ничего не выбрано - защита от быстрых рисовальщиков : )
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Circuits.CC

Post by Shaos »

Наверное ввод текста тоже нужно добавить:
You do not have the required permissions to view the files attached to this post.
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Lavr
Supreme God
Posts: 16676
Joined: 21 Oct 2009 08:08
Location: Россия

Re: Circuits.CC

Post by Lavr »

Shaos wrote:защита от быстрых рисовальщиков :)
А если и правда флудерасты нападут? Щаз из-за них везде сплошные капчи... задолбали... :-?
iLavr
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Circuits.CC

Post by Shaos »

У меня есть средства против вандализма - скрытие испорченных клеток и бан по ойпи ;)

Обновил список проверенных браузеров в первом сообщении этого топика:
Shaos wrote:P.P.S. Circuits.CC протестирован в следующих браузерах:

FireFox v16, v17 (говорят и v3.5 работает, но медленно), v52.9.0 (32-bit), v60.5.1esr (64-bit), v66.0.4 (64-bit) (последнюю версию смотрел в Windows10 - при загрузке тормозило, а потом вроде ничего);
Chrome v23, v49.0;
Safari v5.1.7, кстати в v4.1.3 тоже работает (на PowerPC G4);
Safari from iOS 12.2 (touchscreen);
Opera v9.64 (медленно), v10.63, v11.52, v12.11, v36.0;
Konqueror v4.5.5, v4.8.4, v4.14.25;
Android 2.3.6 (touchscreen);
Internet Explorer v8.0 и v9.0 также поддержаны с 23 ноября 2012 (работает, но медленно);
Microsoft Edge (mouse & touchscreen).
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Circuits.CC

Post by Shaos »

Тут вот чего подумалось - ведь имея базу данных в качестве хранилища всех действий пользователей с самого начала мы как бы получаем очень детальную систему контроля версий :mrgreen:
Причём всегда можно посмотреть как оно выглядело в любой момент времени из прошлого, можно откатить несколько шагов активности либо вообще откатиться далеко назад и т.д.
Можно даже добавить тэги - чтобы можно было легко отскакивать на известные/стабильные версии скажем для сравнения с текущим состоянием, а вот чтобы делать бранчевание (ответвление) то надо создавать другой файл, точнее другую базу данных - получается что у нас каждому отдельному проекту будет соответствовать отдельная база данных, которую можно сдампить (целиком либо до тэга или произвольного момента в прошлом). Исходя из этого в Circuits.CC надо добавлять функционал когда пользователь будет иметь возможность создавать новые пустые проекты и работать над ними, переключаясь между ними и т.д. причём работать одновременно с другими пользователями, которым разрешён доступ. Соответственно в базу данных кроме основной таблицы pcb_action добавится таблица со списком тэгов (можно конечно и в главную таблицу тэги вставить, но наверное это не очень логично), таблица разрешённых пользователей с правами доступа (пользователи пока логинятся через IntenseDebate, а потом надо будет думать) ну и может ещё что потом добавлю...
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Circuits.CC

Post by Shaos »

тэги кроме названия и привязки к номеру "поколения" могут иметь координаты прямоугольника отрезания - чтобы лишнее не вошло в сохранённое
в таком случае можно оставаться в рамках общего поля с периодическим сохранением ограниченных по размеру областей в списке тэгов
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Circuits.CC

Post by Shaos »

по своей самодельной ZX-клавке 2007 года:

Image

на скорую руку нарисовал разводку в Circuits.CC:
ZX-keyb.png
используя её в качестве примера, теперь можно написать первое приближение программки, генерирующей гербер-файлы для производства печатной платы...
You do not have the required permissions to view the files attached to this post.
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Circuits.CC

Post by Shaos »

слегка модифицировал разводку, чтобы платка была поменьше (а также приписал текст) - теперь её размер 2.90 x 5.40 дюйма (например на OSHPark сделать три штуки выйдет в $78.30 или $26.10 за штучку)

P.S. в миллиметрах это будет 74 x 137 и например seeedstudio за производство 5 штук возьмёт $26.72

P.P.S. а вот jlcpcb за 5 штук просит всего $7.40 :o
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Circuits.CC

Post by Shaos »

Shaos wrote:Сейчас с выделенной областью можно сделать только одну вещь - скопировать во временную библиотеку /Lib/Clipboard (содержимое которой исчезает при перезагрузке страницы). При этом выскакивает сообщение "Do you want to add this object to your local library?" с текстовым полем, из которого можно при желании скопипастить копируемое в текстовом виде для дальнейшего использования по своему усмотрению либо наоборот - подменить на новое содержимое - тогда в клиборад добавится то, что вставлено юзером в текстовое поле...
....
Если сохранить в виде текста, то некоторые символы (из первых 32 и последних 16) подменятся...
Я думаю так - то что из текстового поля копипаститься (целые десятичные числа, разделённые запятыми, причём 0 обозначает конец строки, а два нуля - конец файла), вполне может считаться форматом представления схем и топологий плат для Circuits.CC - дать ему скажем расширение .ссс ( аббревиатура от Circuits.CC : ) сейчас содержимое такого файла можно непосредственно вставить в Circuits.CC, но также можно сделать из него json (добавив имя, двоеточие и квадратные скобки в начале и в конце последовательности), вставить в программу на сях (как внутренность байтового массива unsigned char[]), а также сконвертнуть в текст (с потерей некоторых символов).

P.S. Для компактности при хранении ccc-файлы можно gz-ипить - будет что-то.ccc.gz :)
Я тут за главного - если что шлите мыло на me собака shaos точка net
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Re: Circuits.CC

Post by Shaos »

Для теста могу вот такую фигню в виде платки изготовить :)
pcb0scr.png
P.S. В виде для печати в натуральную величину оно выглядит так:
PLCC44.png
P.P.S. Под спойлером содержимое соответствующего CCC-файла (для удобства обозрения разбито на строчки):

 plcc44ad.ccc

Code: Select all

62,49,20,24,23,17,17,17,17,17,17,17,17,17,17,9,219,255,219,255,219,255,32,255,32,255,32,255,219,255,219,255,219,255,32,255,32,255,32,255,219,255,219,255,219,255,32,29,21,24,22,52,52,0,
32,32,32,32,32,67,67,32,66,89,45,83,65,32,32,18,255,219,255,219,255,32,255,32,255,32,255,219,255,219,255,219,255,32,255,32,255,32,255,219,255,219,255,219,255,32,29,28,32,32,32,32,32,0,
32,50,20,24,23,17,17,17,17,17,17,17,17,17,9,18,219,255,219,255,32,255,32,255,32,255,219,255,219,255,219,255,32,255,32,255,32,255,219,255,219,255,219,255,32,29,28,29,21,24,22,52,51,0,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,18,18,255,219,255,32,255,32,255,32,255,219,255,219,255,219,255,32,255,32,255,32,255,219,255,219,255,219,255,32,29,28,29,28,32,32,32,32,32,0,
32,51,20,24,23,17,17,17,17,17,17,17,17,9,18,18,219,255,32,255,32,255,32,255,219,255,219,255,219,255,32,255,32,255,32,255,219,255,219,255,219,255,32,29,28,29,28,29,21,24,22,52,50,0,
32,32,32,32,32,32,32,32,32,32,32,32,32,18,18,18,255,32,255,32,255,32,255,219,255,219,255,219,255,32,255,32,255,32,255,219,255,219,255,219,255,32,29,28,29,28,29,28,32,32,32,32,32,0,
32,52,20,24,23,17,17,17,17,17,17,17,9,18,18,18,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,29,28,29,28,29,28,29,21,24,22,52,49,0,
32,32,32,32,32,32,32,32,32,32,32,32,18,18,18,18,68,69,83,73,71,78,69,68,32,73,78,32,67,73,82,67,85,73,84,83,46,67,67,32,29,28,29,28,29,28,29,28,32,32,32,32,32,0,
32,53,20,24,23,17,17,17,17,17,17,9,18,18,18,18,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,29,28,29,28,29,28,29,28,29,21,24,22,52,48,0,
32,32,32,32,32,32,32,32,32,32,240,18,18,18,18,6,17,49,17,17,17,17,17,17,17,17,9,10,17,17,17,17,17,17,17,52,52,17,17,28,29,28,29,28,29,28,29,28,32,32,32,32,32,0,
32,54,20,24,23,17,17,17,17,9,32,18,18,18,6,17,17,50,17,17,17,17,17,17,17,9,18,18,10,17,17,17,17,17,17,52,51,17,17,17,28,29,28,29,28,29,28,29,21,24,22,51,57,0,
32,32,32,32,32,32,32,32,32,18,32,18,18,6,17,17,17,51,17,17,17,17,17,17,9,18,18,18,18,10,17,17,17,17,17,52,50,17,17,17,17,28,29,28,29,28,29,28,32,32,32,32,32,0,
32,55,20,24,23,17,17,17,9,18,32,18,6,17,17,17,17,52,17,17,17,17,17,9,18,18,18,18,18,18,10,17,17,17,17,52,49,17,17,17,17,17,28,29,28,29,28,29,21,24,22,51,56,0,
32,32,32,32,32,32,32,32,18,18,32,6,17,17,17,17,17,53,17,17,17,17,9,18,18,18,18,18,18,18,18,29,17,17,17,52,48,17,17,17,17,17,17,28,29,28,29,28,32,32,32,32,32,0,
32,56,20,24,23,17,17,9,18,18,50,48,49,57,32,32,32,32,32,32,32,25,18,25,18,25,18,25,18,25,18,25,218,191,218,191,218,191,218,191,218,196,196,29,28,29,28,29,21,24,22,51,55,0,
32,32,32,32,32,32,32,18,18,6,17,17,17,17,17,17,17,54,17,17,17,28,18,32,18,32,18,32,18,32,18,32,179,192,217,192,217,192,217,192,217,42,29,28,29,28,29,28,32,32,32,32,32,0,
32,57,20,24,23,17,9,18,6,17,17,17,17,17,17,17,17,55,17,25,32,25,12,25,12,25,12,24,12,25,12,25,179,25,17,51,57,17,17,17,17,17,28,29,28,29,28,29,21,24,22,51,54,0,
32,32,32,32,32,32,18,6,17,17,17,17,17,17,17,17,17,56,17,17,17,28,218,196,196,196,196,196,196,196,191,29,17,17,17,51,56,17,17,17,17,17,17,28,29,28,29,28,32,32,32,32,32,0,
49,48,20,24,23,9,6,17,17,17,17,17,17,17,17,17,17,57,17,25,32,25,179,32,32,32,30,32,32,32,179,25,32,25,17,51,55,17,17,17,17,17,17,17,28,29,28,29,21,24,22,51,53,0,
32,32,32,32,32,6,17,17,17,17,17,17,17,17,17,17,49,48,17,17,17,28,179,32,32,32,32,32,32,32,179,29,17,17,17,51,54,17,17,17,17,17,17,17,17,28,29,28,32,32,32,32,32,0,
49,49,20,24,23,17,17,17,17,17,17,17,17,17,17,17,49,49,17,25,32,25,179,32,32,32,32,32,32,32,179,25,32,25,17,51,53,17,17,17,17,17,17,17,17,17,28,29,21,24,22,51,52,0,
32,32,32,32,32,29,17,17,17,17,17,17,17,17,17,17,49,50,17,17,17,28,179,80,76,67,67,45,52,52,179,29,17,17,17,51,52,17,17,17,17,17,17,17,17,17,17,28,32,32,32,32,32,0,
49,50,20,24,23,28,29,17,17,17,17,17,17,17,17,17,49,51,17,25,32,25,179,32,32,32,32,32,32,32,179,25,32,25,17,51,51,17,17,17,17,17,17,17,17,17,17,17,21,24,22,51,51,0,
32,32,32,32,32,29,28,29,17,17,17,17,17,17,17,17,49,52,17,17,17,28,179,32,32,32,32,32,32,32,179,29,17,17,17,51,50,17,17,17,17,17,17,17,17,17,17,9,32,32,32,32,32,0,
49,51,20,24,23,28,29,28,29,17,17,17,17,17,17,17,49,53,17,25,32,25,179,32,32,32,32,32,32,32,179,25,32,25,17,51,49,17,17,17,17,17,17,17,17,17,9,6,21,24,22,51,50,0,
32,32,32,32,32,29,28,29,28,29,17,17,17,17,17,17,49,54,17,17,17,28,192,196,196,196,196,196,196,196,217,29,17,17,17,51,48,17,17,17,17,17,17,17,17,9,18,32,32,32,32,32,32,0,
49,52,20,24,23,28,29,28,29,28,29,17,17,17,17,17,49,55,17,25,32,25,8,25,8,25,8,25,8,25,8,25,32,25,17,50,57,17,17,17,17,17,17,17,9,18,6,17,21,24,22,51,49,0,
32,32,32,32,32,29,28,29,28,29,28,176,177,178,219,219,178,177,176,32,32,32,18,32,18,32,18,32,18,32,18,29,17,17,17,50,56,17,17,17,17,17,17,9,18,18,32,32,32,32,32,32,32,0,
49,53,20,24,23,28,29,28,29,28,176,177,178,219,219,178,177,176,32,32,32,25,18,25,18,25,18,25,18,25,18,25,198,205,205,205,205,205,205,205,205,205,187,18,18,6,17,17,21,24,22,51,48,0,
32,32,32,32,32,29,28,29,28,29,17,17,17,17,17,17,49,56,17,17,17,28,18,18,18,18,18,18,18,18,6,17,17,17,17,50,55,17,17,17,17,9,186,18,18,32,32,32,32,32,32,32,32,0,
49,54,20,24,23,28,29,28,29,28,29,17,17,17,17,17,49,57,17,17,17,17,5,18,18,18,18,18,18,6,17,17,17,17,17,50,54,17,17,17,9,18,186,18,6,17,17,17,21,24,22,50,57,0,
32,32,32,32,32,29,28,29,28,29,28,29,17,17,17,17,50,48,17,17,17,17,17,5,18,18,18,18,6,17,17,17,17,17,17,50,53,17,17,9,18,18,186,18,32,32,32,32,32,32,32,32,32,0,
49,55,20,24,23,28,29,28,29,28,29,28,29,17,17,17,50,49,17,17,17,17,17,17,5,18,18,6,17,17,17,17,17,17,17,50,52,17,9,18,18,18,186,6,17,17,17,17,21,24,22,50,56,0,
32,32,32,32,32,29,28,29,28,29,28,29,28,29,17,17,50,50,17,17,17,17,17,17,17,5,6,17,17,17,17,17,17,17,17,50,51,9,18,18,18,18,200,205,205,205,205,181,32,32,32,32,32,0,
49,56,20,24,23,28,29,28,29,28,29,28,29,28,32,32,32,32,32,32,65,85,84,72,79,82,58,83,72,65,79,83,32,32,32,32,32,18,18,18,18,6,17,17,17,17,17,17,21,24,22,50,55,0,
32,32,32,32,32,29,28,29,28,29,28,29,28,29,17,26,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,18,18,18,18,32,32,32,32,32,32,32,32,32,32,32,32,0,
49,57,20,24,23,28,29,28,29,28,29,28,32,27,32,26,32,25,32,25,32,25,32,25,32,25,32,25,32,25,32,25,32,25,32,25,32,18,18,18,6,17,17,17,17,17,17,17,21,24,22,50,54,0,
32,32,32,32,32,29,28,29,28,29,28,32,32,32,32,26,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,18,18,18,32,32,32,32,32,32,32,32,32,32,32,32,32,0,
50,48,20,24,23,28,29,28,29,28,32,26,32,27,32,26,32,25,32,25,32,25,32,25,32,25,32,25,32,25,32,25,32,25,32,25,32,18,18,6,17,17,17,17,17,17,17,17,21,24,22,50,53,0,
32,32,32,32,32,29,28,29,28,32,32,26,32,32,32,26,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,18,18,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,
50,49,20,24,23,28,29,28,32,27,32,26,32,27,32,26,32,25,32,25,32,25,32,25,32,25,32,25,32,25,32,25,32,25,32,25,32,18,6,17,17,17,17,17,17,17,17,17,21,24,22,50,52,0,
32,32,32,32,32,29,28,32,32,32,32,26,32,32,32,26,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,18,110,101,100,111,80,67,46,111,114,103,32,32,32,32,32,0,
50,50,20,24,23,28,32,27,32,27,17,26,32,27,32,26,32,25,32,25,32,25,32,25,32,25,32,25,32,25,32,25,32,25,32,25,32,6,17,17,17,17,17,17,17,17,17,17,21,24,22,50,51,0,0

You do not have the required permissions to view the files attached to this post.
Я тут за главного - если что шлите мыло на me собака shaos точка net