Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.12.2012, 16:21
Профессор
Отправить личное сообщение для torsar Посмотреть профиль Найти все сообщения от torsar
 
Регистрация: 06.01.2012
Сообщений: 409

редактор блоксхем на js
есть такая задача :

Цитата:
Создать простой редактор блок-схем:

1. Создание блоков

- Пользователь выделяет регион на экране, по размерам этого региона
создаётся блок (только прямоугольные блоки)
- У пользователя должна быть возможность подписать блок
- Подписи должны быть внутри блока
- Должна быть возможность перемещать блоки

2. Создание связей между блоками

- У пользователя должны быть возможность указывать связь между блоками
- Связь отображается в виде линии
- Линии могут пересекаться между собой и проходить через другие блоки
- При перемещении блоков, связь между блоками не должна нарушаться
без использования сторонних фреймворков
(накрайняк jquery)
куда рыть
примеров в нете не нашел

Цитата:
Описание (допущения, ограничения, инструкция и т.п.)
нужна инструкция, как оформить талмуты
что такое : допущения, ограничения, инструкция
Ответить с цитированием
  #2 (permalink)  
Старый 19.12.2012, 17:54
Профессор
Отправить личное сообщение для DjDiablo Посмотреть профиль Найти все сообщения от DjDiablo
 
Регистрация: 04.02.2011
Сообщений: 1,815

Блоки это обычные html div,

используем
jquery - общий функционал
jquery ui dragable - для перемещения блоков
jquery ui resize - для изменения размеров блоков

при перемещении блока нужно отловить событии и переместить все связанные линии следом.
при удалении блока нужно отловить событие и удалить все связанные через таргет или source линии.

связи реализуются силами SVG,
один из примеров SVG линий из библиотеки raphael http://raphaeljs.com/graffle.html


схема описывается как граф. (использовать обьекты или массивы для описания нод и рёбер, это скорее дело вкуса)
model={
    node:{
         "1":{x:10,y:10,width:50,height:20,text:"я первый блок"},
         "2":{x:110,y:110,width:50,height:20,text:"я второй блок"}
    },

    edge:{
         "3":{source:"1", target:"2" }
    }
}
__________________
Лучше калымить в гандурасе чем гандурасить на колыме

Последний раз редактировалось DjDiablo, 19.12.2012 в 19:39.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не получается вставить код js в HTML garmoni Элементы интерфейса 3 05.09.2013 05:56
Ищу приличный редактор кода под JS Universe Общие вопросы Javascript 28 30.10.2012 18:30
Конфликтуют js скрипты в Opera romka AJAX и COMET 2 28.05.2012 15:32
wysiwyg редактор под паролем на js dplz Элементы интерфейса 4 08.01.2011 23:17
Редактор для JS под *nix инклуд Оффтопик 2 14.10.2010 09:56