2010-05-14 2 views
11

У меня есть набор коллекций изображений, созданных с помощью Microsoft Deep Zoom, и приложение Silverlight, которое в настоящее время потребляет их для отображения через MultiScaleImage - все работает очень хорошо - я 'просто хотел бы получить некоторый опыт программирования iPad, и у есть несколько идей для некоторых приложений для iPad. Все мои идеи полагаются на то, что я могу отображать/манипулировать этими черепичными наборами изображений (на iPad).Получение коллекции из черепичной коллекции на iPad (Deep Zoom)

Я просто взял iMac, чтобы облегчить это. Я не вижу в этом никаких библиотек Objective-C/Cocoa-touch, поэтому предполагаю, что мне придется сворачивать самостоятельно. (Я видел компонент Seadragon Ajax, который довольно гладкий, но я имею дело с коллекциями, которые он не поддерживает. Я также хотел бы перевернуть это как родное приложение, чтобы получить опыт.)

Единственный проект с открытым исходным кодом, который я нашел для отображения/обработки наборов черепичных изображений, был Openzoom - компонент Flash. Я тоже не знаком с ActionScript (Python, Java, C# и c - это единственные языки, которые я действительно использовал), но вкратце проверяя код, на котором у меня действительно не было никаких проблем, и, вероятно, можно использовать его для подсказок о том, как поменять местами входы и выходы и т. д. Но, поскольку я довольно новичок в Objective-C/Cocoa-touch, некоторые указатели в правильном направлении будут оценены.

1) Есть ли какие-либо другие проекты, которые у меня отсутствуют, или это OpenZoom, мой лучший выбор для некоторых ссылок?

2) Должен ли я пытаться сделать это отображение в каркасе UIKit, или я должен делать это как экран OpenGL?

3) Любые другие предложения/указатели, о которых я не думал спрашивать.

+0

У меня была закладка проекта @ github для последующего наблюдения (выглядит как порт OpenZoom для iOS), но похоже, что проект был вытащен - http: // webcache .googleusercontent.com/поиск д = кэша: 0oKvy9JOAQ0J: https: //github.com/gasi/openzoom-mobile-ios/commits/master+openzoom+ios&cd=1&hl=en&ct=clnk&gl=us&client=firefox-a&source=www .google.com перечисляет кеш Google. –

ответ

4

Я только что работал над несколькими приложениями, которые полагаются на черепицу больших изображений, чтобы обеспечить глубокое масштабирование. Я нашел несколько примеров, но лучшим и полезным для меня был образец кода Apple PhotoScroller.

Он использует CATiledLayer для обработки плитки. Результатом является чрезвычайно плавный и отзывчивый интерфейс даже с очень большими изображениями и не слишком сложный. (Немного сложный, но не очень плохой).

Так, чтобы ответить на ваш вопрос прямо:

  1. PhotoScroller Code

  2. QuartzCore Framework (который входит в состав SDK)

  3. Существует большой, свободный маленький макинтош приложение для нарезки изображений в плитки, которые я использую много: «Тилен»
0

Вы можете взглянуть на них библиотека ау RouteMe делает это, динамическая загрузка высших плитками разрешения, панорамирование и т.д. https://github.com/route-me/route-me

0

Я не могу поверить, что никто не говорил вам о UIScrollView; компонент UIScrollView предназначен именно для этой цели! (думаю, Google Maps, который его использует).

Заканчивать ссылку класса ... UIScrollView

метод делегаты вы требуете следующего ....

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView 

Это позволяет проверить уровень масштабирования, смещение и т. Д., А затем предоставить представление для масштабирования. Таким образом, вы можете поддерживать свою «позицию» в черепичном ландшафте независимо от графики, используемой для ее представления.

Не рулите свой собственный UIScrollView, не нужно!

+1

К сожалению, UIScrollView не очень хорошо масштабируется с очень большими изображениями. Он висит и колеблется и часто падает. – Dancreek

1

В исходных образцах WWDC 2010 под iOS есть проект в ScrollView Suite под названием Tiling. Это соответствует сеансу 104 WWDC10. Это, вероятно, лучший пример черепицы изображения.

+1

Плитка - отличный пример, но имеет неэффективный код. «PhotoScroller» похож, но предлагает гораздо более чистый и более плавный опыт. – Dancreek

+0

Согласовано. Многое нужно узнать в этих WWDC vids, наверняка. – diatrevolo

Смежные вопросы