Alex7wrt
-
Постов
508 -
Зарегистрирован
-
Посещение
-
Победитель дней
31
Активность репутации
-
Alex7wrt отреагировална AngryOwl в Как записать видео на Андроиде?
Вообще, конечно, собрать видео из отдельных кадров можно. Вполне реально. Но не для всего)
И это все "свистоперделки"...
Что касается частоты кадров - реально получать 10-15. Еще и от устройства зависит, от камеры и т.д. Но все эти тормоза из-за класса "обертки" работы с видео. Именно он выдает так мало кадров. Сама камера работает. FMX работает тоже ничего, но основные тормоза из-за того что в TCameraComponent уже "приходит" мало кадров.
На самом деле, как я считаю, разработка для мобильных платформ должна в первую очередь решать именно мультимедийные функции (я бы сказал, что это ОЧЕНЬ важно). А мы имеем пока-что их жалкое подобие, которое нужно допиливать ручками...
Я уже не говорю о том, что почему-то если в той же iOS что-то "запрещено", то это же касается и Android, хотя в ней все намного проще и она более "открыта". Глупо как-то, уж простите за откровенность...
-
Alex7wrt получил реакцию от Rusland в Что быстрее, эмулятор или телефон?
Соглашусь, что скорость компиляции во многом обусловлена именно дисковой подсистемой. Поэтому эмулятор не может быть быстрее - разница с устройством только в том, что в одном случае после компиляции приложение копируется и устанавливается на устройство, а в другом запускается на эмуляторе. Но скопировать приложение на устройство - это дело от силы нескольких секунд. При этом сам эмулятор при медленном диске тоже будет долго запускаться и сильно ограничивать доступную оперативную память на компьютере, чем вызывать замедление работы той же студии. 4 ГБ в этом случае совсем не много.
А вообще использование эмулятора имеет больший смысл, так как позволяет оценить работоспособность приложения на разных версиях ОС, различном количестве памяти и разрешений экрана. Но удобным это будет при наличии быстрого SSD, хорошего процессора и большого объема ОЗУ.
-
Alex7wrt отреагировална GASCHE в Почему пляшет TImage?
Или вместо
CharacterImage.Position.X := 500 - size / 2 - size mod 3; CharacterImage.Position.Y := ScreenHeight - size; как-то так
CharacterImage.Position.X := ( ScreenWidth - size )/2; CharacterImage.Position.Y := ( screenHeight - size )/2; и установите
CharacterImage.WrapMode := TImageWrapMode.Stretch; -
Alex7wrt получил реакцию от sulion в Почему пляшет TImage?
Используйте свойство TImage.Wrapmode и настраивайте размеры. Можно поместить TImage в контейнер и указать свойство Align:=TAlignLayout.Center
-
Alex7wrt получил реакцию от Kitty в Почему пляшет TImage?
Используйте свойство TImage.Wrapmode и настраивайте размеры. Можно поместить TImage в контейнер и указать свойство Align:=TAlignLayout.Center
-
Alex7wrt отреагировална Brovin Yaroslav в Как поменять фон Edit?
Добрый день,
Можно использовать прозрачный стиль эдита 'TransparentEditStyle'. В таком стиле эдит отображает только текст. В таком случае, Вы можете подложить под TEdit любую подложку. Или же сделать новый стиль на базе стиля по умолчанию.
-
Alex7wrt отреагировална rustam_d в Что быстрее, эмулятор или телефон?
Эмулятор да тормозит, жесть против ИОС эмулятора.
Лучше Андроид устройство какое нить по юсб или вафле (последнее сложнее в реализации).
Компиляция я бы сказал - невыносимая, даже по юсб.
Сделайте следующее:
- установите делфи и проекты ваши на SSD диск скажем 250гб (у меня самс ево 500 и операционка на нем)
- поставьте процессор core i7
после всего этого у вас компиляция будет всего на 95% отставать от VCL, против текущих 550%.
-
Alex7wrt получил реакцию от Kitty в ini файл в телефоне
На телефоне открылся прямым щелчком. Программой ES проводник. Android 4.0.3
-
Alex7wrt отреагировална Axbor в Получение координат при нажатии и движении мышки
Извиняюсь, не посмотрел форум! нужно было всего лишь Screen->MousePos() использовать!
-
-
Alex7wrt отреагировална Brovin Yaroslav в Работа с текстом
Просто прочитайте:
Как работать с TStringHelper и TStringBuilder в C++Builder ХЕ6 -
Alex7wrt отреагировална Kitty в RAD XE9 (RAD X Seattle)
3. Coming Soon to RAD Studio ... iOS 64-bit Universal App Debugging
http://community.embarcadero.com/blogs/entry/coming-soon-to-rad-studio-ios-64-bit-universal-app-debugging
4. See What's Coming in RAD Studio, Delphi and C++Builder Wednesday, September 2, 2015
http://forms.embarcadero.com/RADFirstLookWebinar-2015-09-02
-
Alex7wrt отреагировална Kitty в RAD XE9 (RAD X Seattle)
Собираем в интернете, что нас ждет в RAD XE9.
1. Увеличение стабильности в два раза:
http://community.embarcadero.com/write-blog-post/entry/coming-soon-to-rad-studio-twice-the-ide-memory-brings-a-new-level-of-productivity-performance-and-stability
2. Создание служб в Андроиде:
http://community.embarcadero.com/blogs/entry/coming-soon-to-delphi-execute-background-tasks-with-android-services
Может еще кто найдет что-то интересное.
-
Alex7wrt отреагировална Axbor в Как сохранить пропорцию?
Bitmap->Width, Bitmap->Height, оригинальные размеры загруженного изображения. Размер компоненты изменяю так:
double koefW = 200.0/(double)Bitmap->Width; double koefH = 200.0/(double)Bitmap->Height; double koefC = (koefW < koefH?koefW:koefH); Image->Width = Bitmap->Width * koefC; Image->Height = Bitmap->Height * koefC; -
Alex7wrt отреагировална Равиль Зарипов (ZuBy) в Ресурсы и оперативная память
2. Deployment при каждом запуске распаковывается на устройство и можно работать как с обычными файлами,
Ресурсами вы сами занимаетесь, когда они вам нужны вы их вытаскиваете
-
Alex7wrt отреагировална Равиль Зарипов (ZuBy) в TMapsEngine
Компонент TMapsEngine
Возможности
Нативный LocationSensor [ANDROID] Геокодинг/Реверс геокодинг через Google API, Yandex API, Here Maps API Построение маршрута через Google Distance API Расчет дистанции по прямой Совместим со стандартным компонентом TLocationSensor
Видео демонстрация
На видео видно как TMapView косячик с миллионом точек, приложение зависло при отрисовке, но с этим ничего не поделать.
Без синхронизации не возможно отрисовать все точки
Исходник
TMapsEngine_source.zip
TMapsEngine_Seattle_10.zip
Скачать APK (долго он там не пролежит, а форум не позволяет загрузить zip размером 7,4 мб )
-
Alex7wrt получил реакцию от Равиль Зарипов (ZuBy) в Как определить выбранный на устройстве язык?
Для Android:
uses FMX.Platform; ......... var ls: IFMXLocaleService; lang: string; begin if TPlatformServices.Current.SupportsPlatformService(IFMXLocaleService, IInterface(ls)) then lang:=ls.GetCurrentLangID; В зависимости от языка переменная lang примет значения 'en', 'ru' и т.д.
либо просто:
lang:=copy(SysLocale.DefaultLCID,1,2); В этом случае нужен модуль System.SysUtils.
Первый вариант, насколько я помню, выводит региональный код, а второй - код языка. В большинстве случаев они совпадают, но для стран, в которых говорят на одном языке, они отличаются. Первый вариант возвратит код страны, второй - код языка.
-
Alex7wrt получил реакцию от Vitaldj в Как определить выбранный на устройстве язык?
Для Android:
uses FMX.Platform; ......... var ls: IFMXLocaleService; lang: string; begin if TPlatformServices.Current.SupportsPlatformService(IFMXLocaleService, IInterface(ls)) then lang:=ls.GetCurrentLangID; В зависимости от языка переменная lang примет значения 'en', 'ru' и т.д.
либо просто:
lang:=copy(SysLocale.DefaultLCID,1,2); В этом случае нужен модуль System.SysUtils.
Первый вариант, насколько я помню, выводит региональный код, а второй - код языка. В большинстве случаев они совпадают, но для стран, в которых говорят на одном языке, они отличаются. Первый вариант возвратит код страны, второй - код языка.
-
Alex7wrt получил реакцию от Kitty в Как определить выбранный на устройстве язык?
Для Android:
uses FMX.Platform; ......... var ls: IFMXLocaleService; lang: string; begin if TPlatformServices.Current.SupportsPlatformService(IFMXLocaleService, IInterface(ls)) then lang:=ls.GetCurrentLangID; В зависимости от языка переменная lang примет значения 'en', 'ru' и т.д.
либо просто:
lang:=copy(SysLocale.DefaultLCID,1,2); В этом случае нужен модуль System.SysUtils.
Первый вариант, насколько я помню, выводит региональный код, а второй - код языка. В большинстве случаев они совпадают, но для стран, в которых говорят на одном языке, они отличаются. Первый вариант возвратит код страны, второй - код языка.
-
Alex7wrt отреагировална AngryOwl в Недостающий вариант Image WrapMode
Особо править нет времени, разберетесь. Все просто - это компонент, унаследованный от стандартного TImage, с теми свойствами, которые Вам нужны.
unit Sphere.ImageEx; interface uses System.Classes, System.Types, FMX.Types, FMX.Objects, FMX.Graphics; type TBitmapFit = (bfDefault, bfWidth, bfHeight, bfBoth); TImageEx = class(TImage) private FBitmapDisplayRect: TRectF; procedure SetBitmapFit(const Value: TBitmapFit); protected FBitmapFit: TBitmapFit; procedure Paint; override; public constructor Create(AOwner: TComponent); override; function ImagePointToBitmap(const APoint: TPointF): TPointF; property BitmapDisplayRect: TRectF read FBitmapDisplayRect; published property BitmapFit: TBitmapFit read FBitmapFit write SetBitmapFit; end; implementation { TImageEx } constructor TImageEx.Create(AOwner: TComponent); begin inherited; FBitmapFit := bfDefault; FBitmapDisplayRect := TRectF.Empty; end; function TImageEx.ImagePointToBitmap(const APoint: TPointF): TPointF; begin Result := APoint; if not (BitmapDisplayRect.IsEmpty) and Assigned(Bitmap) then begin Result.X := Result.X - Trunc(BitmapDisplayRect.Left); if Bitmap.Width > BitmapDisplayRect.Width then Result.X := Result.X / (BitmapDisplayRect.Width / Bitmap.Width ); Result.Y := Result.Y - Trunc(BitmapDisplayRect.Top); if Bitmap.Height > BitmapDisplayRect.Height then Result.Y := Result.Y / (BitmapDisplayRect.Height / Bitmap.Height ); end; end; procedure TImageEx.Paint; begin {весь код - в прикрепленном файлике} // всегда центрируем для этих методов отрисовки else if FBitmapFit <> bfDefault then begin // растягиваем по ширине с обрезкой верхнего/нижнего краев Canvas.BeginScene(); try Coef := B.Width / B.Height; R := RectF(0, 0, B.Width, B.Height); if FBitmapFit = bfWidth then R := RectF(0, 0, Width, Width / Coef) else if FBitmapFit = bfHeight then R := RectF(0, 0, Height * Coef, Height) else if FBitmapFit = bfBoth then begin if Coef >= 1 then R := RectF(0, 0, Height * Coef, Height) else R := RectF(0, 0, Width, Width / Coef); end; RectCenter(R, LocalRect); Canvas.DrawBitmap(B, RectF(0, 0, B.Width, B.Height), R, AbsoluteOpacity, DisableInterpolation); FBitmapDisplayRect := R; finally Canvas.EndScene(); end; end; end; procedure TImageEx.SetBitmapFit(const Value: TBitmapFit); begin if FBitmapFit <> Value then begin FBitmapFit := Value; Paint(); end; end; //initialization // RegisterFMXClasses([TImageEx]); end. Sphere.ImageEx.zip
-
Alex7wrt получил реакцию от Brovin Yaroslav в [TImage] Как сделать увеличение\уменьшение TImage при помощи двух пальцев?
Здесь можно почитать про обработку мультитача в Delphi XE7
-
Alex7wrt отреагировална Равиль Зарипов (ZuBy) в При выравниваниее по правому краю съедаются символы.
как одно из решении, добавить пробелы с права от текста. если float то перевести в string
-
Alex7wrt отреагировална Brovin Yaroslav в Как закрасить имеющийся рисунок?
Можно сделать маску, содержащую ту часть футболки, которую нужно закрашивать. А далее по маске попиксельно менять цвет.
-
Alex7wrt отреагировална Brovin Yaroslav в Как закрасить имеющийся рисунок?
Еще подумал, что можно сделать png картинку с футболкой, у которой прозрачной будет только закрашиваемая часть. А дальше просто подложить под картинку TRectangle и просто менять ему цвет.
-
Alex7wrt получил реакцию от Brovin Yaroslav в узнать расстояние между 2 точками
Если нужно решать поточнее, тогда надо представлять Землю как двухосный эллипсоид. Тогда это задача на нахождение длины дуги на поверхности эллипсоида. Решается методами вариационного исчисления. http://vasnake.blogspot.com/2006/12/blog-post_15.html