Android ARToolKit — изменение эталонных изображений в примере проекта NFT?

Я возился с ARToolKit и их примерами проектов Android Studio, чтобы увидеть, какой из них я могу изменить для своей цели. Я открыл nftBookProj, это тот, который использует pinball.jpg, а затем поместил анимированную пропеллерную плоскость вместе с 3D-осью в исходную точку изображения.

Я заметил, что в каталоге nftBookProj/nftBook/src/main/assets/DataNFT/ есть файлы pinball.iset, pinball.fset и pinball.fset3. Затем я сделал свое собственное изображение (с определенными функциями, высоким разрешением, высоким разрешением и всем остальным), а затем использовал методы, указанные в этом руководстве, я создал свой собственный набор файлов reference_1.iset, reference_1.fset, reference_1.fset3. Затем я поместил эти 3 файла в ту же папку, где находятся pinball файлов.

Затем я проверил все действия и классы, чтобы найти строки, которые мне нужно изменить, чтобы приложение ссылалось на мои собственные файлы reference вместо файлов pinball. Его не было ни в одном из классов, но я нашел файл markers.dat в папке /assets/Data/, и он выглядел так:

# Number of markers
1

# Entries for each marker. Format is:
#
# Name of pattern file (relative to this file)
# Marker type (SINGLE)
# Marker width in millimetres (floating point number)
# Optional tokens:
#     FILTER [x]   Enable pose estimate filtering for the preceding marker
#                  x (optional) specifies the cutoff frequency. Default
#                  value is AR_FILTER_TRANS_MAT_CUTOFF_FREQ_DEFAULT, which
#                  at time of writing, equals 5.0.
# A blank line

../DataNFT/pinball
NFT
FILTER 15.0

Затем я изменил ../DataNFT/pinball на ../DataNFT/reference_1, скомпилировал проект, запустил его на своем планшете.

Однако, когда я запустил код, он не реагировал на изображение, которое я сделал, и когда я проверил изображение с пинболом, он сработал. Это означает, что я не мог полностью изменить изображение, к которому оно относилось.

Затем я трижды проверил все классы, которые смог, но не смог увидеть, где там указано, что следует использовать изображение пинбола. Этот тупик ставит меня в тупик, потому что я больше не знаю, где искать.

Кому-нибудь удалось изменить эталонное изображение в ARToolKits NFTBookProj для Android?


person Razgriz    schedule 13.11.2016    source источник


Ответы (1)


Нашел. В классе nftBookApplication там сказано, что если файл(ы) в папке с ресурсами будут изменены, вы должны обновить папку с ресурсами, вы также должны обновить код версии в манифесте.

Если вы не собираетесь загружать приложение в магазин Google Play, вы можете просто обновить его в манифесте И удалить строки versionCode и versionName в файле сборки сборки. Если вы этого не сделаете, информация о версии в файле gradle всегда будет переопределять информацию в манифесте. Ну, вы также можете использовать коды версий в файле gradle, если вы не против потратить минуту или две, когда вам нужно его синхронизировать.

person Razgriz    schedule 13.11.2016
comment
Что также помогает, так это удалить приложение с телефона после того, как вы внесли изменения в каталог активов. Это приводит к его полному развертыванию. - person Thor_Bux; 14.11.2016
comment
Ну, это может быть быстрее во время разработки, чем каждый раз менять код версии. Кроме того, вам может не понадобиться увеличивать номер версии каждый раз, когда вы добавляете новый маркер, а только один раз, когда вы закончите работу с конкретной функцией. - person Thor_Bux; 14.11.2016
comment
Если вы меняете только код версии в манифесте, это намного быстрее, чем удаление приложения. Если бы вы меняли код версии в gradle, я бы понял, хотите ли вы вместо этого удалить. - person Razgriz; 14.11.2016
comment
Понятно :). Я всегда использую путь версии Gradle - person Thor_Bux; 14.11.2016