@jjlmoya/utils-nature 1.25.0 → 1.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/category/index.ts +2 -1
- package/src/entries.ts +4 -1
- package/src/index.ts +4 -0
- package/src/pages/[locale]/[slug].astro +5 -4
- package/src/tests/consumer_loader_contract.test.ts +24 -0
- package/src/tests/tool_validation.test.ts +2 -2
- package/src/tool/seedStratificationCalendar/bibliography.astro +9 -0
- package/src/tool/seedStratificationCalendar/bibliography.ts +16 -0
- package/src/tool/seedStratificationCalendar/calendar-actions.ts +66 -0
- package/src/tool/seedStratificationCalendar/component.astro +62 -0
- package/src/tool/seedStratificationCalendar/controller.ts +227 -0
- package/src/tool/seedStratificationCalendar/dom-views.ts +130 -0
- package/src/tool/seedStratificationCalendar/entry.ts +29 -0
- package/src/tool/seedStratificationCalendar/evaluator.ts +32 -0
- package/src/tool/seedStratificationCalendar/i18n/de.ts +35 -0
- package/src/tool/seedStratificationCalendar/i18n/en.ts +149 -0
- package/src/tool/seedStratificationCalendar/i18n/es.ts +35 -0
- package/src/tool/seedStratificationCalendar/i18n/fr.ts +35 -0
- package/src/tool/seedStratificationCalendar/i18n/id.ts +35 -0
- package/src/tool/seedStratificationCalendar/i18n/it.ts +35 -0
- package/src/tool/seedStratificationCalendar/i18n/ja.ts +35 -0
- package/src/tool/seedStratificationCalendar/i18n/ko.ts +35 -0
- package/src/tool/seedStratificationCalendar/i18n/nl.ts +35 -0
- package/src/tool/seedStratificationCalendar/i18n/pl.ts +35 -0
- package/src/tool/seedStratificationCalendar/i18n/pt.ts +35 -0
- package/src/tool/seedStratificationCalendar/i18n/ru.ts +35 -0
- package/src/tool/seedStratificationCalendar/i18n/sv.ts +35 -0
- package/src/tool/seedStratificationCalendar/i18n/tr.ts +35 -0
- package/src/tool/seedStratificationCalendar/i18n/zh.ts +35 -0
- package/src/tool/seedStratificationCalendar/index.ts +11 -0
- package/src/tool/seedStratificationCalendar/localized.ts +70 -0
- package/src/tool/seedStratificationCalendar/logic.test.ts +53 -0
- package/src/tool/seedStratificationCalendar/logic.ts +198 -0
- package/src/tool/seedStratificationCalendar/profile-labels.ts +18 -0
- package/src/tool/seedStratificationCalendar/profile-select.ts +43 -0
- package/src/tool/seedStratificationCalendar/seed-stratification-calendar.css +558 -0
- package/src/tool/seedStratificationCalendar/seo.astro +10 -0
- package/src/tool/seedStratificationCalendar/storage.ts +27 -0
- package/src/tool/seedStratificationCalendar/ui.ts +66 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/bibliography.astro +9 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/bibliography.ts +16 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/component.astro +115 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/controller.ts +81 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/dom-views.ts +98 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/entry.ts +29 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/evaluator.test.ts +22 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/evaluator.ts +11 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/i18n/de.ts +49 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/i18n/en.ts +189 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/i18n/es.ts +46 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/i18n/fr.ts +44 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/i18n/id.ts +44 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/i18n/it.ts +43 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/i18n/ja.ts +43 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/i18n/ko.ts +43 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/i18n/nl.ts +43 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/i18n/pl.ts +43 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/i18n/pt.ts +43 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/i18n/ru.ts +43 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/i18n/sv.ts +43 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/i18n/tr.ts +43 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/i18n/zh.ts +43 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/index.ts +11 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/logic.test.ts +48 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/logic.ts +99 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/seo.astro +14 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/storage.ts +18 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/ui.ts +48 -0
- package/src/tool/wildlifeCameraTrapEffortPlanner/wildlife-camera-trap-effort-planner.css +442 -0
- package/src/tools.ts +5 -1
- package/src/types.ts +6 -5
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import { bibliography } from '../bibliography';
|
|
3
|
+
import type { WildlifeCameraTrapEffortPlannerLocaleContent } from '../entry';
|
|
4
|
+
|
|
5
|
+
const slug = 'planificador-esfuerzo-fototrampeo-fauna';
|
|
6
|
+
const title = 'Planificador de Esfuerzo con Cámaras Trampa';
|
|
7
|
+
const description = 'Planifica el esfuerzo de fototrampeo, estima días cámara y carga de revisión, y dibuja una red de campo sin afirmar tamaños de población.';
|
|
8
|
+
const faqData = [
|
|
9
|
+
{ question: '¿Qué son los días cámara?', answer: 'Los días cámara son el número de cámaras multiplicado por sus días activos. Describen el esfuerzo de muestreo, no el número de animales de una zona.' },
|
|
10
|
+
{ question: '¿Calcula el planificador el tamaño de una población?', answer: 'No. Estima esfuerzo operativo y una huella nominal de planificación. La abundancia, densidad y ocupación requieren un diseño validado y modelos que tengan en cuenta la detección imperfecta.' },
|
|
11
|
+
{ question: '¿Qué hace el campo de separación?', answer: 'Crea una celda cuadrada nominal para cada cámara y compara la separación objetivo con la separación de una cuadrícula uniforme. No es el radio de detección del sensor.' },
|
|
12
|
+
{ question: '¿Cómo uso el calendario de revisión?', answer: 'Usa los puntos semanales para planificar visitas y carga de imágenes. Compáralos con tu almacenamiento, baterías y capacidad de revisión, y registra cada visita real.' },
|
|
13
|
+
];
|
|
14
|
+
const howToData = [
|
|
15
|
+
{ name: 'Describe el área de estudio', text: 'Introduce el área que quieres muestrear. El conmutador Metric o Imperial conserva el valor físico al cambiar de unidades.' },
|
|
16
|
+
{ name: 'Dibuja el esfuerzo', text: 'Introduce cámaras, duración y separación objetivo. El dibujo muestra estaciones relativas, no coordenadas ni zonas de detección garantizadas.' },
|
|
17
|
+
{ name: 'Estima la carga de imágenes', text: 'Introduce las activaciones esperadas por cámara y día. El planificador las multiplica por los días cámara y las distribuye por revisiones semanales.' },
|
|
18
|
+
{ name: 'Prepara los registros de campo', text: 'Asigna identificadores únicos a cámaras y sesiones, anota la instalación y registra cada revisión, incluso cuando no haya detecciones.' },
|
|
19
|
+
];
|
|
20
|
+
const faqSchema: WithContext<FAQPage> = { '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faqData.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) };
|
|
21
|
+
const howToSchema: WithContext<HowTo> = { '@context': 'https://schema.org', '@type': 'HowTo', name: title, description, step: howToData.map((step, index) => ({ '@type': 'HowToStep', position: index + 1, name: step.name, text: step.text })) };
|
|
22
|
+
const appSchema: WithContext<SoftwareApplication> = { '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'UtilityApplication', operatingSystem: 'All', offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' }, inLanguage: 'es' };
|
|
23
|
+
|
|
24
|
+
export const content: WildlifeCameraTrapEffortPlannerLocaleContent = {
|
|
25
|
+
slug, title, description,
|
|
26
|
+
ui: {
|
|
27
|
+
areaPerCameraLabel: 'Área por cámara',
|
|
28
|
+
labelSurveyArea: 'Área de estudio', labelCameraCount: 'Estaciones cámara', labelDeploymentDays: 'Días de despliegue', labelSpacing: 'Separación objetivo', labelTriggerRate: 'Activaciones esperadas por cámara y día', unitHectares: 'ha', unitAcres: 'ac', unitMeters: 'm', unitFeet: 'ft', unitCameras: 'cámaras', unitDays: 'días', unitEventsPerDay: 'eventos por día',
|
|
29
|
+
helpSurveyArea: 'El área que quieres muestrear.', helpCameraCount: 'Cámaras activas en esta campaña.', helpDeploymentDays: 'Días entre instalación y retirada.', helpSpacing: 'Ayuda de planificación, no radio de detección.', helpTriggerRate: 'Usa una tasa prudente de una campaña comparable o de una prueba.', unitSystemLabel: 'Sistema de medida', metricLabel: 'Métrico', imperialLabel: 'Imperial', presetsTitle: 'Puntos de partida de campo', presetBackyard: 'Borde del jardín', presetWoodland: 'Bosque mixto', presetReserve: 'Gran reserva',
|
|
30
|
+
mapLabel: 'Croquis relativo del despliegue', mapCaption: 'Estaciones numeradas en una cuadrícula relativa. Las celdas ayudan con la separación, pero no son un mapa de cobertura del hábitat.', stationLabel: 'estación', cameraDaysLabel: 'Días cámara', expectedEventsLabel: 'Eventos esperados', spacingLabel: 'Separación en cuadrícula', reviewLoadLabel: 'Eventos por revisión', reviewScheduleTitle: 'Ritmo de revisión', reviewScheduleText: 'Los puntos semanales hacen visible la carga de imágenes antes de salir al campo. Sustitúyelos por las visitas de tu protocolo.', reviewDayLabel: 'Día', reviewEventsLabel: 'eventos esperados',
|
|
31
|
+
statusBalanced: 'La separación parece equilibrada', statusSparse: 'Las estaciones parecen muy separadas', statusDense: 'Las estaciones parecen muy juntas', statusReviewHeavy: 'La carga de revisión requiere atención', statusNeedsInput: 'Completa el plan de despliegue', statusNote: 'Este es un plan de esfuerzo. No indica cuántos animales viven en el área ni garantiza detectar una especie.', assumptionTitle: 'Supuestos del modelo', assumptionText: 'La huella nominal trata cada estación como una celda cuadrada basada en la separación objetivo. Los eventos esperados suponen que la tasa se mantiene constante en cámaras y días.', limitationTitle: 'Límites de campo', limitationText: 'Elige ubicaciones según la especie y la pregunta, no solo según la geometría. Registra IDs, fechas, orientación, altura, hábitat y revisiones sin detecciones para tener en cuenta la detección imperfecta.',
|
|
32
|
+
},
|
|
33
|
+
seo: [
|
|
34
|
+
{ type: 'title', text: 'Planifica el esfuerzo de muestreo con cámaras trampa', level: 2 },
|
|
35
|
+
{ type: 'paragraph', html: 'Un proyecto de fototrampeo tiene dos problemas antes de obtener una lista de especies. Primero, necesitas saber cuánto esfuerzo representa el despliegue. Después, necesitas saber si el flujo de imágenes puede revisarse, almacenarse y documentarse. Este planificador convierte esas preguntas en días cámara, eventos esperados, un croquis de estaciones y revisiones.' },
|
|
36
|
+
{ type: 'title', text: 'Usa los días cámara para describir el esfuerzo', level: 3 },
|
|
37
|
+
{ type: 'paragraph', html: 'Los días cámara se calculan como <code>estaciones cámara × días de despliegue</code>. Doce cámaras activas durante 28 días producen 336 días cámara. Sirve para comparar campañas, pero no estima poblaciones ni corrige fallos, diferencias de hábitat o comportamiento.' },
|
|
38
|
+
{ type: 'list', items: ['<strong>Estaciones cámara:</strong> dispositivos activos en la campaña.', '<strong>Días de despliegue:</strong> días previstos entre instalación y retirada.', '<strong>Tasa de activación:</strong> eventos por cámara y día, no cada imagen de una ráfaga.', '<strong>Revisiones:</strong> usa la carga esperada para planificar almacenamiento, baterías y visitas.'] },
|
|
39
|
+
{ type: 'title', text: 'Interpreta el croquis como ayuda de campo', level: 3 },
|
|
40
|
+
{ type: 'paragraph', html: 'El croquis usa el área, el número de cámaras y la separación objetivo para mostrar una disposición relativa. La huella nominal es el número de estaciones por la separación al cuadrado. Es una ayuda geométrica transparente, no el área que detecta un sensor. El terreno, la vegetación, los caminos, la altura, la orientación y el comportamiento cambian la probabilidad de detección.' },
|
|
41
|
+
{ type: 'title', text: 'Prepara registros antes de instalar', level: 3 },
|
|
42
|
+
{ type: 'paragraph', html: 'Define las especies objetivo y la pregunta del muestreo antes de colocar las cámaras. Asigna un identificador estable a cada cámara y sesión. Registra fecha, ubicación, altura, orientación, hábitat, configuración y funcionamiento en la instalación y en cada revisión. Una revisión sin detecciones también debe conservarse.' },
|
|
43
|
+
{ type: 'tip', title: 'No conviertas esfuerzo en abundancia', html: 'Las cámaras trampa sufren detección imperfecta. Usa esta herramienta para presupuestar esfuerzo y revisión de imágenes, y un diseño ecológico validado cuando necesites ocupación, abundancia, densidad o cambios poblacionales.' },
|
|
44
|
+
],
|
|
45
|
+
faq: faqData, howTo: howToData, bibliography, schemas: [faqSchema, howToSchema, appSchema],
|
|
46
|
+
};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import { bibliography } from '../bibliography';
|
|
3
|
+
import type { WildlifeCameraTrapEffortPlannerLocaleContent } from '../entry';
|
|
4
|
+
|
|
5
|
+
const slug = 'planificateur-effort-pieges-photographiques-faune';
|
|
6
|
+
const title = "Planificateur d'effort des pièges photographiques";
|
|
7
|
+
const description = "Planifiez l'effort des pièges photographiques, estimez les jours caméra et la charge de vérification, puis esquissez un réseau de terrain sans estimer une population.";
|
|
8
|
+
const faqData = [
|
|
9
|
+
{ question: 'Que sont les jours caméra ?', answer: "Les jours caméra correspondent au nombre de caméras multiplié par le nombre de jours actifs. Ils décrivent l'effort d'échantillonnage, pas le nombre d'animaux dans la zone." },
|
|
10
|
+
{ question: 'Le planificateur calcule-t-il la taille d une population ?', answer: 'Non. Il estime l effort operationnel et une empreinte nominale de planification. L abondance, la densite et l occupation demandent un protocole valide et un modele tenant compte de la detection imparfaite.' },
|
|
11
|
+
{ question: 'Que fait la distance entre stations ?', answer: 'Elle cree une cellule carree nominale pour chaque camera et compare la distance cible a celle d une grille reguliere. Ce n est pas un rayon de detection.' },
|
|
12
|
+
{ question: 'Comment utiliser le calendrier de verification ?', answer: 'Utilisez les points hebdomadaires pour planifier les visites et le volume d images. Comparez-les au stockage, aux batteries et a votre capacite de verification, puis notez chaque visite reelle.' },
|
|
13
|
+
];
|
|
14
|
+
const howToData = [
|
|
15
|
+
{ name: 'Decrire la zone d etude', text: 'Saisissez la surface que le dispositif doit echantillonner. Le bouton Metric ou Imperial conserve la valeur physique lors du changement d unite.' },
|
|
16
|
+
{ name: 'Placer l effort sur le terrain', text: 'Saisissez le nombre de cameras, la duree et la distance cible. Le schema montre des stations relatives, pas des coordonnees ni des zones garanties.' },
|
|
17
|
+
{ name: 'Estimer la charge d images', text: 'Saisissez le nombre attendu de declenchements par camera et par jour. Le planificateur le multiplie par les jours camera et le repartit sur les verifications hebdomadaires.' },
|
|
18
|
+
{ name: 'Preparer les fiches de terrain', text: 'Attribuez des identifiants uniques aux cameras et aux sessions, notez la pose et consignez chaque verification, meme sans detection.' },
|
|
19
|
+
];
|
|
20
|
+
const faqSchema: WithContext<FAQPage> = { '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faqData.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) };
|
|
21
|
+
const howToSchema: WithContext<HowTo> = { '@context': 'https://schema.org', '@type': 'HowTo', name: title, description, step: howToData.map((step, index) => ({ '@type': 'HowToStep', position: index + 1, name: step.name, text: step.text })) };
|
|
22
|
+
const appSchema: WithContext<SoftwareApplication> = { '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'UtilityApplication', operatingSystem: 'All', offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' }, inLanguage: 'fr' };
|
|
23
|
+
|
|
24
|
+
export const content: WildlifeCameraTrapEffortPlannerLocaleContent = {
|
|
25
|
+
slug, title, description,
|
|
26
|
+
ui: {
|
|
27
|
+
areaPerCameraLabel: 'Surface par caméra',
|
|
28
|
+
labelSurveyArea: 'Zone d etude', labelCameraCount: 'Stations camera', labelDeploymentDays: 'Jours de pose', labelSpacing: 'Distance cible entre stations', labelTriggerRate: 'Declenchements attendus par camera et par jour', unitHectares: 'ha', unitAcres: 'ac', unitMeters: 'm', unitFeet: 'ft', unitCameras: 'cameras', unitDays: 'jours', unitEventsPerDay: 'evenements par jour', helpSurveyArea: 'La surface a echantillonner.', helpCameraCount: 'Cameras actives dans cette campagne.', helpDeploymentDays: 'Jours entre la pose et le retrait.', helpSpacing: 'Une aide de planification, pas un rayon de detection.', helpTriggerRate: 'Utilisez un taux prudent issu d une campagne comparable ou d un test.', unitSystemLabel: 'Systeme de mesure', metricLabel: 'Metrique', imperialLabel: 'Imperial', presetsTitle: 'Points de depart terrain', presetBackyard: 'Lisiere proche', presetWoodland: 'Foret mixte', presetReserve: 'Grande reserve',
|
|
29
|
+
mapLabel: 'Schema relatif du dispositif', mapCaption: 'Stations numerotees sur une grille relative. Les cellules aident a discuter des distances, mais ne sont pas une carte de couverture de l habitat.', stationLabel: 'station', cameraDaysLabel: 'Jours camera', expectedEventsLabel: 'Evenements attendus', spacingLabel: 'Distance de grille reguliere', reviewLoadLabel: 'Evenements par verification', reviewScheduleTitle: 'Rythme de verification', reviewScheduleText: 'Les points hebdomadaires rendent la charge d images visible avant la pose. Remplacez-les par les visites de votre protocole.', reviewDayLabel: 'Jour', reviewEventsLabel: 'evenements attendus', statusBalanced: 'Distance apparemment equilibree', statusSparse: 'Stations apparemment eloignees', statusDense: 'Stations apparemment rapprochees', statusReviewHeavy: 'Charge de verification a surveiller', statusNeedsInput: 'Completez le plan de pose', statusNote: 'C est un plan d effort. Il ne dit pas combien d animaux vivent dans la zone et ne garantit pas la detection d une espece.', assumptionTitle: 'Hypotheses du modele', assumptionText: 'L empreinte nominale traite chaque station comme une cellule carree fondee sur la distance cible. Les evenements attendus supposent un taux constant entre cameras et jours.', limitationTitle: 'Limites terrain', limitationText: 'Choisissez les emplacements selon l espece et la question, pas seulement selon la geometrie. Notez les identifiants, dates, orientation, hauteur, habitat et controles sans detection pour tenir compte de la detection imparfaite.',
|
|
30
|
+
},
|
|
31
|
+
seo: [
|
|
32
|
+
{ type: 'title', text: 'Planifier l effort d echantillonnage par pieges photographiques', level: 2 },
|
|
33
|
+
{ type: 'paragraph', html: 'Un projet de piegeage photographique doit resoudre deux questions avant d obtenir une liste d especes. Quel effort represente le dispositif ? Le flux d images peut-il etre verifie, stocke et documente ? Ce planificateur transforme ces questions en jours camera, evenements attendus, schema relatif et points de verification.' },
|
|
34
|
+
{ type: 'title', text: 'Decrire l effort avec les jours camera', level: 3 },
|
|
35
|
+
{ type: 'paragraph', html: "Les jours caméra se calculent ainsi: <code>stations caméra × jours de pose</code>. Douze caméras actives pendant 28 jours produisent 336 jours caméra. Ce nombre compare des campagnes, mais n'estime pas une population et ne corrige ni les pannes ni les différences d'habitat ou de comportement." },
|
|
36
|
+
{ type: 'list', items: ['<strong>Stations camera :</strong> appareils actifs durant la campagne.', '<strong>Jours de pose :</strong> jours prevus entre installation et retrait.', '<strong>Taux de declenchement :</strong> evenements par camera et par jour, pas chaque photo d une rafale.', '<strong>Verifications :</strong> utilisez la charge attendue pour planifier stockage, batteries et visites.'] },
|
|
37
|
+
{ type: 'title', text: 'Lire le schema comme une aide de terrain', level: 3 },
|
|
38
|
+
{ type: 'paragraph', html: 'Le schema utilise la surface, le nombre de cameras et la distance cible pour montrer une disposition relative. L empreinte nominale est le nombre de stations multiplie par la distance au carre. C est une aide geometrique transparente, pas la surface detectee par un capteur. Relief, vegetation, chemins, hauteur, orientation et comportement modifient la probabilite de detection.' },
|
|
39
|
+
{ type: 'title', text: 'Preparer les releves avant la pose', level: 3 },
|
|
40
|
+
{ type: 'paragraph', html: 'Definissez les especes cibles et la question avant de poser les appareils. Attribuez un identifiant stable a chaque camera et session. Notez date, emplacement, hauteur, orientation, habitat, reglages et fonctionnement a la pose et a chaque verification. Une verification sans detection reste une observation.' },
|
|
41
|
+
{ type: 'tip', title: 'Ne pas transformer l effort en abondance', html: 'Les pieges photographiques ont une detection imparfaite. Utilisez cet outil pour budgeter le terrain et le tri des images, puis un protocole ecologique valide pour occupation, abondance, densite ou evolution de population.' },
|
|
42
|
+
],
|
|
43
|
+
faq: faqData, howTo: howToData, bibliography, schemas: [faqSchema, howToSchema, appSchema],
|
|
44
|
+
};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import { bibliography } from '../bibliography';
|
|
3
|
+
import type { WildlifeCameraTrapEffortPlannerLocaleContent } from '../entry';
|
|
4
|
+
|
|
5
|
+
const slug = 'perencana-upaya-kamera-jebak-satwa';
|
|
6
|
+
const title = 'Perencana Upaya Kamera Jebak Satwa';
|
|
7
|
+
const description = 'Rencanakan upaya kamera jebak, perkirakan hari kamera dan beban pemeriksaan, lalu buat sketsa stasiun lapangan tanpa mengklaim ukuran populasi.';
|
|
8
|
+
const faqData = [
|
|
9
|
+
{ question: 'Apa itu hari kamera?', answer: 'Hari kamera adalah jumlah kamera dikalikan jumlah hari aktifnya. Nilai ini menggambarkan upaya sampling, bukan jumlah satwa di suatu area.' },
|
|
10
|
+
{ question: 'Apakah perencana menghitung ukuran populasi satwa?', answer: 'Tidak. Perencana memperkirakan upaya operasional dan jejak nominal untuk perencanaan. Kelimpahan, kepadatan, dan okupansi memerlukan rancangan studi tervalidasi yang memperhitungkan deteksi tidak sempurna.' },
|
|
11
|
+
{ question: 'Apa fungsi jarak antarstasiun?', answer: 'Jarak membuat sel persegi nominal untuk setiap kamera dan membandingkan jarak target dengan jarak kisi merata. Jarak ini bukan radius deteksi sensor.' },
|
|
12
|
+
{ question: 'Bagaimana jadwal pemeriksaan digunakan?', answer: 'Gunakan titik mingguan untuk merencanakan kunjungan dan beban gambar. Bandingkan dengan penyimpanan, baterai, dan kapasitas pemeriksaan, lalu catat setiap kunjungan nyata.' },
|
|
13
|
+
];
|
|
14
|
+
const howToData = [
|
|
15
|
+
{ name: 'Gambarkan area survei', text: 'Masukkan area yang akan disampling. Tombol Metric atau Imperial menjaga nilai fisik saat satuan diganti.' },
|
|
16
|
+
{ name: 'Rencanakan kisi lapangan', text: 'Masukkan jumlah kamera, durasi pemasangan, dan jarak target. Sketsa menunjukkan stasiun relatif, bukan koordinat atau zona deteksi yang dijamin.' },
|
|
17
|
+
{ name: 'Perkirakan beban gambar', text: 'Masukkan pemicu yang diharapkan per kamera per hari. Perencana mengalikannya dengan hari kamera dan membaginya ke titik pemeriksaan mingguan.' },
|
|
18
|
+
{ name: 'Siapkan catatan lapangan', text: 'Beri ID unik untuk kamera dan sesi, catat pemasangan, dan dokumentasikan setiap pemeriksaan termasuk saat tidak ada deteksi.' },
|
|
19
|
+
];
|
|
20
|
+
const faqSchema: WithContext<FAQPage> = { '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faqData.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) };
|
|
21
|
+
const howToSchema: WithContext<HowTo> = { '@context': 'https://schema.org', '@type': 'HowTo', name: title, description, step: howToData.map((step, index) => ({ '@type': 'HowToStep', position: index + 1, name: step.name, text: step.text })) };
|
|
22
|
+
const appSchema: WithContext<SoftwareApplication> = { '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'UtilityApplication', operatingSystem: 'All', offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' }, inLanguage: 'id' };
|
|
23
|
+
|
|
24
|
+
export const content: WildlifeCameraTrapEffortPlannerLocaleContent = {
|
|
25
|
+
slug, title, description,
|
|
26
|
+
ui: {
|
|
27
|
+
areaPerCameraLabel: 'Luas per kamera',
|
|
28
|
+
labelSurveyArea: 'Area survei', labelCameraCount: 'Stasiun kamera', labelDeploymentDays: 'Hari pemasangan', labelSpacing: 'Jarak target antarstasiun', labelTriggerRate: 'Pemicu yang diharapkan per kamera per hari', unitHectares: 'ha', unitAcres: 'ac', unitMeters: 'm', unitFeet: 'ft', unitCameras: 'kamera', unitDays: 'hari', unitEventsPerDay: 'peristiwa per hari', helpSurveyArea: 'Area yang akan disampling.', helpCameraCount: 'Kamera aktif dalam kampanye ini.', helpDeploymentDays: 'Hari dari pemasangan sampai pengambilan.', helpSpacing: 'Bantuan perencanaan, bukan radius deteksi.', helpTriggerRate: 'Gunakan angka hati-hati dari kampanye sejenis atau uji coba.', unitSystemLabel: 'Sistem pengukuran', metricLabel: 'Metrik', imperialLabel: 'Imperial', presetsTitle: 'Titik awal lapangan', presetBackyard: 'Tepi kebun', presetWoodland: 'Hutan campuran', presetReserve: 'Cagar luas',
|
|
29
|
+
mapLabel: 'Sketsa relatif penempatan lapangan', mapCaption: 'Stasiun kamera bernomor pada kisi perencanaan relatif. Sel membantu jarak, bukan peta cakupan habitat.', stationLabel: 'stasiun', cameraDaysLabel: 'Hari kamera', expectedEventsLabel: 'Peristiwa yang diharapkan', spacingLabel: 'Jarak kisi merata', reviewLoadLabel: 'Peristiwa tiap pemeriksaan', reviewScheduleTitle: 'Ritme pemeriksaan', reviewScheduleText: 'Titik mingguan membuat beban gambar terlihat sebelum kamera dipasang. Ganti dengan kunjungan sesuai protokol lapangan.', reviewDayLabel: 'Hari', reviewEventsLabel: 'peristiwa diperkirakan', statusBalanced: 'Jarak terlihat seimbang', statusSparse: 'Stasiun terlihat berjauhan', statusDense: 'Stasiun terlihat berdekatan', statusReviewHeavy: 'Beban pemeriksaan perlu perhatian', statusNeedsInput: 'Lengkapi rencana pemasangan', statusNote: 'Ini adalah rencana upaya. Hasil ini tidak memberi tahu jumlah satwa di area dan tidak menjamin deteksi spesies.', assumptionTitle: 'Asumsi model', assumptionText: 'Jejak nominal memperlakukan setiap stasiun sebagai sel persegi berdasarkan jarak target. Peristiwa yang diharapkan menganggap laju pemicu tetap pada semua kamera dan hari.', limitationTitle: 'Batasan lapangan', limitationText: 'Pilih lokasi berdasarkan spesies dan pertanyaan, bukan hanya geometri. Catat ID, tanggal, arah, tinggi, habitat, dan pemeriksaan kosong agar deteksi tidak sempurna dapat diperhitungkan.',
|
|
30
|
+
},
|
|
31
|
+
seo: [
|
|
32
|
+
{ type: 'title', text: 'Rencanakan upaya sampling kamera jebak', level: 2 },
|
|
33
|
+
{ type: 'paragraph', html: 'Proyek kamera jebak memiliki dua masalah perencanaan sebelum daftar spesies tersedia. Berapa besar upaya sampling yang diwakili penempatan? Apakah aliran gambar dapat diperiksa, disimpan, dan didokumentasikan? Perencana ini mengubah pertanyaan tersebut menjadi hari kamera, peristiwa, sketsa stasiun, dan titik pemeriksaan.' },
|
|
34
|
+
{ type: 'title', text: 'Gunakan hari kamera untuk menjelaskan upaya', level: 3 },
|
|
35
|
+
{ type: 'paragraph', html: 'Hari kamera dihitung sebagai <code>stasiun kamera × hari pemasangan</code>. Dua belas kamera aktif selama 28 hari menghasilkan 336 hari kamera. Nilai ini berguna untuk membandingkan kampanye, tetapi bukan perkiraan populasi dan tidak memperbaiki kegagalan kamera, perbedaan habitat, atau perilaku satwa.' },
|
|
36
|
+
{ type: 'list', items: ['<strong>Stasiun kamera:</strong> perangkat aktif dalam kampanye.', '<strong>Hari pemasangan:</strong> hari yang direncanakan antara pemasangan dan pengambilan.', '<strong>Laju pemicu:</strong> peristiwa per kamera per hari, bukan setiap foto dalam satu rangkaian.', '<strong>Titik pemeriksaan:</strong> gunakan beban yang diharapkan untuk merencanakan penyimpanan, baterai, kunjungan, dan pemeriksaan gambar.'] },
|
|
37
|
+
{ type: 'title', text: 'Baca sketsa lapangan sebagai bantuan perencanaan', level: 3 },
|
|
38
|
+
{ type: 'paragraph', html: 'Sketsa menggunakan area, jumlah kamera, dan jarak target untuk menampilkan susunan relatif. Jejak nominal adalah jumlah stasiun dikalikan kuadrat jarak target. Ini adalah bantuan geometri yang transparan, bukan area yang dapat dideteksi sensor. Medan, vegetasi, jalur, tinggi, arah, dan perilaku satwa mengubah peluang deteksi.' },
|
|
39
|
+
{ type: 'title', text: 'Siapkan catatan yang baik sebelum pemasangan', level: 3 },
|
|
40
|
+
{ type: 'paragraph', html: 'Tentukan spesies sasaran dan pertanyaan survei sebelum memasang kamera. Beri pengenal tetap untuk kamera dan sesi. Catat tanggal, lokasi, tinggi, arah, habitat, pengaturan, dan apakah perangkat bekerja saat pemasangan dan pemeriksaan. Pemeriksaan tanpa deteksi tetap merupakan catatan penting.' },
|
|
41
|
+
{ type: 'tip', title: 'Jangan mengubah upaya menjadi kelimpahan', html: 'Kamera jebak dipengaruhi deteksi yang tidak sempurna. Gunakan alat ini untuk menganggarkan kerja lapangan dan penanganan gambar, lalu gunakan rancangan ekologi tervalidasi untuk okupansi, kelimpahan, kepadatan, atau perubahan populasi.' },
|
|
42
|
+
],
|
|
43
|
+
faq: faqData, howTo: howToData, bibliography, schemas: [faqSchema, howToSchema, appSchema],
|
|
44
|
+
};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import { bibliography } from '../bibliography';
|
|
3
|
+
import type { WildlifeCameraTrapEffortPlannerLocaleContent } from '../entry';
|
|
4
|
+
|
|
5
|
+
const slug = 'pianificatore-sforzo-fototrappole-fauna';
|
|
6
|
+
const title = 'Pianificatore dello sforzo con fototrappole';
|
|
7
|
+
const description = 'Pianifica lo sforzo delle fototrappole, stima i giorni fotocamera e organizza i controlli senza trasformare l impegno in una stima della popolazione.';
|
|
8
|
+
const faqData = [
|
|
9
|
+
{ question: 'Che cosa sono i giorni fotocamera?', answer: 'Sono il numero di fotocamere moltiplicato per i giorni di attività. Descrivono lo sforzo di campionamento, non il numero di animali presenti.' },
|
|
10
|
+
{ question: 'Il pianificatore calcola la dimensione della popolazione?', answer: 'No. Stima lo sforzo operativo e un impronta nominale. Abbondanza, densità e occupazione richiedono un protocollo valido e un modello per la rilevazione imperfetta.' },
|
|
11
|
+
{ question: 'Che cosa indica la distanza tra le stazioni?', answer: 'Crea una cella quadrata nominale per fotocamera e confronta la distanza obiettivo con quella di una griglia uniforme. Non è un raggio di rilevamento.' },
|
|
12
|
+
{ question: 'Come si usa il calendario dei controlli?', answer: 'Usa i punti settimanali per pianificare visite, batterie, memoria e revisione. Sostituiscili con le visite reali previste dal protocollo di campo.' },
|
|
13
|
+
];
|
|
14
|
+
const howToData = [
|
|
15
|
+
{ name: 'Descrivi l area di studio', text: 'Inserisci l area che il campionamento dovrebbe coprire. Il selettore metrico o imperiale mantiene coerente il valore fisico.' },
|
|
16
|
+
{ name: 'Disegna lo sforzo', text: 'Inserisci fotocamere, durata e distanza obiettivo. Lo schema mostra una griglia relativa, non coordinate o zone di rilevamento garantite.' },
|
|
17
|
+
{ name: 'Stima il carico di immagini', text: 'Inserisci gli eventi attesi per fotocamera al giorno. Il pianificatore li moltiplica per i giorni fotocamera e li distribuisce sui controlli.' },
|
|
18
|
+
{ name: 'Prepara i registri di campo', text: 'Assegna identificativi univoci, registra posa e impostazioni e annota ogni controllo, anche quando non viene rilevato alcun animale.' },
|
|
19
|
+
];
|
|
20
|
+
const faqSchema: WithContext<FAQPage> = { '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faqData.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) };
|
|
21
|
+
const howToSchema: WithContext<HowTo> = { '@context': 'https://schema.org', '@type': 'HowTo', name: title, description, step: howToData.map((step, index) => ({ '@type': 'HowToStep', position: index + 1, name: step.name, text: step.text })) };
|
|
22
|
+
const appSchema: WithContext<SoftwareApplication> = { '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'UtilityApplication', operatingSystem: 'All', offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' }, inLanguage: 'it' };
|
|
23
|
+
|
|
24
|
+
export const content: WildlifeCameraTrapEffortPlannerLocaleContent = {
|
|
25
|
+
slug, title, description,
|
|
26
|
+
ui: {
|
|
27
|
+
areaPerCameraLabel: 'Area per fotocamera',
|
|
28
|
+
labelSurveyArea: 'Area di studio', labelCameraCount: 'Stazioni fotocamera', labelDeploymentDays: 'Giorni di posa', labelSpacing: 'Distanza obiettivo', labelTriggerRate: 'Eventi attesi per fotocamera al giorno', unitHectares: 'ha', unitAcres: 'ac', unitMeters: 'm', unitFeet: 'ft', unitCameras: 'fotocamere', unitDays: 'giorni', unitEventsPerDay: 'eventi al giorno', helpSurveyArea: 'Area che il campionamento dovrebbe coprire.', helpCameraCount: 'Fotocamere attive nella campagna.', helpDeploymentDays: 'Giorni tra installazione e ritiro.', helpSpacing: 'Aiuto per la pianificazione, non raggio di rilevamento.', helpTriggerRate: 'Usa un valore prudente da una campagna simile o da un test.', unitSystemLabel: 'Sistema di misura', metricLabel: 'Metrico', imperialLabel: 'Imperiale', presetsTitle: 'Punti di partenza sul campo', presetBackyard: 'Margine del giardino', presetWoodland: 'Bosco misto', presetReserve: 'Grande riserva', mapLabel: 'Schema relativo della posa', mapCaption: 'Stazioni numerate su una griglia relativa. Le celle aiutano con le distanze, ma non sono una mappa dell habitat.', stationLabel: 'stazione', cameraDaysLabel: 'Giorni fotocamera', expectedEventsLabel: 'Eventi attesi', spacingLabel: 'Distanza della griglia uniforme', reviewLoadLabel: 'Eventi per controllo', reviewScheduleTitle: 'Ritmo dei controlli', reviewScheduleText: 'I punti settimanali rendono visibile il carico prima della posa. Sostituiscili con le visite del tuo protocollo.', reviewDayLabel: 'Giorno', reviewEventsLabel: 'eventi attesi', statusBalanced: 'Distanza apparentemente equilibrata', statusSparse: 'Stazioni apparentemente lontane', statusDense: 'Stazioni apparentemente vicine', statusReviewHeavy: 'Il carico di revisione richiede attenzione', statusNeedsInput: 'Completa il piano di posa', statusNote: 'È un piano di sforzo. Non indica quanti animali vivono nell area e non garantisce il rilevamento di una specie.', assumptionTitle: 'Ipotesi del modello', assumptionText: 'L impronta nominale tratta ogni stazione come una cella quadrata basata sulla distanza obiettivo. Gli eventi attesi suppongono un tasso costante tra fotocamere e giorni.', limitationTitle: 'Limiti sul campo', limitationText: 'Scegli i punti in base alla specie e alla domanda, non solo alla geometria. Registra identificativi, date, orientamento, altezza, habitat e controlli senza rilevamenti.',
|
|
29
|
+
},
|
|
30
|
+
seo: [
|
|
31
|
+
{ type: 'title', text: 'Pianificare lo sforzo delle fototrappole', level: 2 },
|
|
32
|
+
{ type: 'paragraph', html: 'Un progetto con fototrappole deve risolvere due problemi prima della posa. Quanto sforzo rappresenta la campagna? Il flusso previsto di immagini può essere controllato, archiviato e documentato? Questo strumento converte le risposte in giorni fotocamera, eventi, schema delle stazioni e controlli.' },
|
|
33
|
+
{ type: 'title', text: 'Usare i giorni fotocamera per descrivere lo sforzo', level: 3 },
|
|
34
|
+
{ type: 'paragraph', html: 'I giorni fotocamera sono <code>stazioni fotocamera × giorni di posa</code>. Dodici fotocamere attive per 28 giorni producono 336 giorni fotocamera. Il numero confronta campagne, ma non stima popolazioni e non corregge guasti, habitat o comportamento.' },
|
|
35
|
+
{ type: 'list', items: ['<strong>Stazioni:</strong> dispositivi attivi nella campagna.', '<strong>Giorni:</strong> periodo previsto tra installazione e ritiro.', '<strong>Tasso di eventi:</strong> eventi per fotocamera e giorno, non ogni immagine di una raffica.', '<strong>Controlli:</strong> pianifica memoria, batterie, visite e revisione.'] },
|
|
36
|
+
{ type: 'title', text: 'Leggere lo schema come aiuto di campo', level: 3 },
|
|
37
|
+
{ type: 'paragraph', html: 'Lo schema usa area, numero di fotocamere e distanza obiettivo per mostrare una disposizione relativa. L impronta nominale è il numero di stazioni moltiplicato per la distanza al quadrato. Non rappresenta la superficie rilevata dal sensore: terreno, vegetazione, altezza, orientamento e comportamento cambiano la probabilità di rilevamento.' },
|
|
38
|
+
{ type: 'title', text: 'Preparare registri migliori prima della posa', level: 3 },
|
|
39
|
+
{ type: 'paragraph', html: 'Definisci specie obiettivo e domanda di ricerca. Assegna un codice stabile a ogni fotocamera e sessione. Registra data, posizione, altezza, orientamento, habitat, impostazioni e funzionamento. Anche un controllo senza rilevamenti è un osservazione del protocollo.' },
|
|
40
|
+
{ type: 'tip', title: 'Non trasformare lo sforzo in abbondanza', html: 'Le fototrappole hanno rilevazione imperfetta. Usa il pianificatore per il budget operativo e un disegno ecologico validato per occupazione, abbondanza, densità o cambiamento della popolazione.' },
|
|
41
|
+
],
|
|
42
|
+
faq: faqData, howTo: howToData, bibliography, schemas: [faqSchema, howToSchema, appSchema],
|
|
43
|
+
};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import { bibliography } from '../bibliography';
|
|
3
|
+
import type { WildlifeCameraTrapEffortPlannerLocaleContent } from '../entry';
|
|
4
|
+
|
|
5
|
+
const slug = 'wildlife-camera-trap-effort-planner';
|
|
6
|
+
const title = '野生動物カメラトラップ調査計画';
|
|
7
|
+
const description = 'カメラトラップの調査 effort、稼働日数、画像確認の負荷を計画し、個体数を推定せずに設置配置を検討します。';
|
|
8
|
+
const faqData = [
|
|
9
|
+
{ question: 'カメラ日数とは何ですか?', answer: 'カメラ日数は、稼働したカメラ台数に稼働日数を掛けた値です。調査 effort を表しますが、地域の動物数を表すものではありません。' },
|
|
10
|
+
{ question: 'この計画は個体数を計算しますか?', answer: 'いいえ。運用上の effort と計画上の面積を示します。個体数、密度、占有率には、検出漏れを扱う検証済みの調査設計と統計モデルが必要です。' },
|
|
11
|
+
{ question: '設置間隔は何に使いますか?', answer: '各カメラの仮想的な正方形セルを作り、面積と台数から求めた均等配置の間隔と比較します。検出半径を表す値ではありません。' },
|
|
12
|
+
{ question: '確認スケジュールはどう使いますか?', answer: '週ごとの確認点を、訪問、電池、保存容量、画像確認の計画に使います。実際の調査プロトコルに合わせて現場の訪問記録へ置き換えてください。' },
|
|
13
|
+
];
|
|
14
|
+
const howToData = [
|
|
15
|
+
{ name: '調査面積を入力する', text: 'カメラ設置で調査する面積を入力します。メートル法とヤード・ポンド法を切り替えても物理的な値は保たれます。' },
|
|
16
|
+
{ name: '配置 effort を描く', text: 'カメラ台数、設置日数、目標間隔を入力します。図は相対的な計画グリッドであり、座標や検出範囲ではありません。' },
|
|
17
|
+
{ name: '画像量を見積もる', text: 'カメラ1台1日あたりの予想イベント数を入力します。カメラ日数に掛け、週ごとの確認点へ配分します。' },
|
|
18
|
+
{ name: '現場記録を準備する', text: 'カメラと設置セッションに固有の識別子を付け、設置情報を記録し、動物が写らない確認も含めて訪問を記録します。' },
|
|
19
|
+
];
|
|
20
|
+
const faqSchema: WithContext<FAQPage> = { '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faqData.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) };
|
|
21
|
+
const howToSchema: WithContext<HowTo> = { '@context': 'https://schema.org', '@type': 'HowTo', name: title, description, step: howToData.map((step, index) => ({ '@type': 'HowToStep', position: index + 1, name: step.name, text: step.text })) };
|
|
22
|
+
const appSchema: WithContext<SoftwareApplication> = { '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'UtilityApplication', operatingSystem: 'All', offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' }, inLanguage: 'ja' };
|
|
23
|
+
|
|
24
|
+
export const content: WildlifeCameraTrapEffortPlannerLocaleContent = {
|
|
25
|
+
slug, title, description,
|
|
26
|
+
ui: {
|
|
27
|
+
areaPerCameraLabel: 'カメラ1台あたりの面積',
|
|
28
|
+
labelSurveyArea: '調査面積', labelCameraCount: 'カメラ台数', labelDeploymentDays: '設置日数', labelSpacing: '目標設置間隔', labelTriggerRate: 'カメラ1台1日あたりの予想イベント', unitHectares: 'ha', unitAcres: 'ac', unitMeters: 'm', unitFeet: 'ft', unitCameras: '台', unitDays: '日', unitEventsPerDay: 'イベント/日', helpSurveyArea: '設置で調査する面積です。', helpCameraCount: '今回の調査で稼働するカメラです。', helpDeploymentDays: '設置から回収までの日数です。', helpSpacing: '計画用のセル幅で、検出半径ではありません。', helpTriggerRate: '類似調査または試験設置から慎重な値を使います。', unitSystemLabel: '単位系', metricLabel: 'メートル法', imperialLabel: 'ヤード・ポンド法', presetsTitle: '現場の開始例', presetBackyard: '林縁', presetWoodland: '混交林', presetReserve: '大規模保護区', mapLabel: '相対的な設置計画図', mapCaption: '番号付きカメラを相対的な計画グリッドに配置しています。生息地の被覆図ではありません。', stationLabel: '地点', cameraDaysLabel: 'カメラ日数', expectedEventsLabel: '予想イベント', spacingLabel: '均等配置の間隔', reviewLoadLabel: '確認1回あたりのイベント', reviewScheduleTitle: '確認リズム', reviewScheduleText: '週ごとの確認点で画像量を事前に把握します。実際の訪問計画に合わせてください。', reviewDayLabel: '日', reviewEventsLabel: '予想イベント', statusBalanced: '間隔はおおむね均衡', statusSparse: '地点の間隔は広め', statusDense: '地点の間隔は狭め', statusReviewHeavy: '確認負荷に注意', statusNeedsInput: '調査計画を入力してください', statusNote: 'これは effort の計画です。動物の個体数や種の検出を保証するものではありません。', assumptionTitle: 'モデルの仮定', assumptionText: '各地点を目標間隔に基づく正方形セルとして扱います。予想イベントは、カメラと日によって発生率が一定だと仮定します。', limitationTitle: '現場での限界', limitationText: '地図上の均一さだけでなく、対象種と問いに合わせて地点を選びます。識別子、日付、向き、高さ、生息地、空振り確認を記録してください。',
|
|
29
|
+
},
|
|
30
|
+
seo: [
|
|
31
|
+
{ type: 'title', text: 'カメラトラップ調査の effort を計画する', level: 2 },
|
|
32
|
+
{ type: 'paragraph', html: '野生動物のカメラトラップ調査では、設置前に二つの負荷を確認します。どれだけの調査 effort になるか、そして画像を保存・確認・記録できるかです。この計画では、カメラ日数、予想イベント、地点図、確認点をまとめて考えられます。' },
|
|
33
|
+
{ type: 'title', text: 'カメラ日数で調査 effort を表す', level: 3 },
|
|
34
|
+
{ type: 'paragraph', html: 'カメラ日数は <code>カメラ台数 × 設置日数</code> です。12台を28日稼働すると336カメラ日数になります。調査間の比較には便利ですが、個体数推定ではなく、故障、生息地、動物の行動も補正しません。' },
|
|
35
|
+
{ type: 'list', items: ['<strong>カメラ台数:</strong> 調査中に稼働する機器を数えます。', '<strong>設置日数:</strong> 設置から回収までの予定日数です。', '<strong>発生率:</strong> 連写の写真数ではなく、カメラ1台1日あたりのイベントを使います。', '<strong>確認点:</strong> 保存容量、電池、訪問、画像確認を計画します。'] },
|
|
36
|
+
{ type: 'title', text: '設置図を計画用の補助として読む', level: 3 },
|
|
37
|
+
{ type: 'paragraph', html: '図は面積、台数、目標間隔から相対的な配置を描きます。仮想面積は地点数に目標間隔の二乗を掛けた値です。センサーの検出面積ではなく、地形、植生、道、向き、高さ、行動で検出確率は変わります。' },
|
|
38
|
+
{ type: 'title', text: '設置前に記録方法を決める', level: 3 },
|
|
39
|
+
{ type: 'paragraph', html: '対象種と研究の問いを決め、カメラとセッションに安定した識別子を付けます。日付、場所、高さ、向き、生息地、設定、稼働状態を記録します。何も写らない確認も調査過程の重要な記録です。' },
|
|
40
|
+
{ type: 'tip', title: 'effort を個体数に変換しない', html: 'カメラトラップには検出漏れがあります。運用と画像確認の予算にはこの計画を使い、占有率、密度、個体数、変化の分析には検証済みの生態学的設計を使ってください。' },
|
|
41
|
+
],
|
|
42
|
+
faq: faqData, howTo: howToData, bibliography, schemas: [faqSchema, howToSchema, appSchema],
|
|
43
|
+
};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import { bibliography } from '../bibliography';
|
|
3
|
+
import type { WildlifeCameraTrapEffortPlannerLocaleContent } from '../entry';
|
|
4
|
+
|
|
5
|
+
const slug = 'wildlife-camera-trap-effort-planner';
|
|
6
|
+
const title = '야생동물 무인카메라 조사 계획표';
|
|
7
|
+
const description = '무인카메라 조사 노력, 카메라 일수와 이미지 확인 부담을 계획하고 개체 수를 추정하지 않는 배치 구상을 만듭니다.';
|
|
8
|
+
const faqData = [
|
|
9
|
+
{ question: '카메라 일수란 무엇인가요?', answer: '카메라 일수는 작동한 카메라 대수에 작동 일수를 곱한 값입니다. 표본 조사 노력을 나타내며 지역의 동물 수를 나타내지는 않습니다.' },
|
|
10
|
+
{ question: '이 계획표가 야생동물 개체 수를 계산하나요?', answer: '아닙니다. 운영 노력과 명목상 계획 면적을 계산합니다. 개체 수, 밀도와 점유율에는 불완전한 검출을 반영한 검증된 조사 설계와 통계 모형이 필요합니다.' },
|
|
11
|
+
{ question: '카메라 간격은 무엇을 하나요?', answer: '카메라별 명목상 정사각형 셀을 만들고 면적과 카메라 수에서 얻은 균등 격자 간격과 비교합니다. 검출 반경은 아닙니다.' },
|
|
12
|
+
{ question: '확인 일정은 어떻게 사용하나요?', answer: '주간 확인 지점을 방문, 배터리, 저장 공간과 이미지 검토 계획에 사용합니다. 실제 현장 프로토콜의 방문 기록으로 바꾸어 사용하세요.' },
|
|
13
|
+
];
|
|
14
|
+
const howToData = [
|
|
15
|
+
{ name: '조사 면적 입력', text: '카메라 배치로 조사할 면적을 입력합니다. 미터법과 야드파운드법을 바꾸어도 실제 물리 값은 유지됩니다.' },
|
|
16
|
+
{ name: '배치 노력 그리기', text: '카메라 수, 배치 기간과 목표 간격을 입력합니다. 그림은 상대적인 계획 격자이며 좌표나 보장된 검출 범위가 아닙니다.' },
|
|
17
|
+
{ name: '이미지 부담 추정', text: '카메라 한 대 하루당 예상 이벤트를 입력합니다. 카메라 일수와 곱한 뒤 주간 확인 지점에 나눕니다.' },
|
|
18
|
+
{ name: '현장 기록 준비', text: '카메라와 세션에 고유 식별자를 부여하고 설치 정보를 기록하며 동물이 찍히지 않은 확인도 모두 남깁니다.' },
|
|
19
|
+
];
|
|
20
|
+
const faqSchema: WithContext<FAQPage> = { '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faqData.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) };
|
|
21
|
+
const howToSchema: WithContext<HowTo> = { '@context': 'https://schema.org', '@type': 'HowTo', name: title, description, step: howToData.map((step, index) => ({ '@type': 'HowToStep', position: index + 1, name: step.name, text: step.text })) };
|
|
22
|
+
const appSchema: WithContext<SoftwareApplication> = { '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'UtilityApplication', operatingSystem: 'All', offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' }, inLanguage: 'ko' };
|
|
23
|
+
|
|
24
|
+
export const content: WildlifeCameraTrapEffortPlannerLocaleContent = {
|
|
25
|
+
slug, title, description,
|
|
26
|
+
ui: {
|
|
27
|
+
areaPerCameraLabel: '카메라당 면적',
|
|
28
|
+
labelSurveyArea: '조사 면적', labelCameraCount: '카메라 지점', labelDeploymentDays: '배치 일수', labelSpacing: '목표 지점 간격', labelTriggerRate: '카메라 한 대 하루당 예상 이벤트', unitHectares: 'ha', unitAcres: 'ac', unitMeters: 'm', unitFeet: 'ft', unitCameras: '대', unitDays: '일', unitEventsPerDay: '이벤트/일', helpSurveyArea: '배치로 조사할 면적입니다.', helpCameraCount: '이번 조사에서 작동할 카메라입니다.', helpDeploymentDays: '설치부터 회수까지의 일수입니다.', helpSpacing: '계획용 셀 크기이며 검출 반경이 아닙니다.', helpTriggerRate: '비슷한 조사나 시험 배치에서 보수적인 값을 사용하세요.', unitSystemLabel: '측정 단위', metricLabel: '미터법', imperialLabel: '야드파운드법', presetsTitle: '현장 시작점', presetBackyard: '숲 가장자리', presetWoodland: '혼합림', presetReserve: '대형 보호구역', mapLabel: '상대적 카메라 배치 그림', mapCaption: '번호가 있는 지점을 상대적인 계획 격자에 배치합니다. 서식지 피복 지도는 아닙니다.', stationLabel: '지점', cameraDaysLabel: '카메라 일수', expectedEventsLabel: '예상 이벤트', spacingLabel: '균등 격자 간격', reviewLoadLabel: '확인당 이벤트', reviewScheduleTitle: '확인 주기', reviewScheduleText: '주간 지점으로 카메라를 설치하기 전에 이미지 부담을 확인합니다. 실제 방문 계획에 맞게 조정하세요.', reviewDayLabel: '일', reviewEventsLabel: '예상 이벤트', statusBalanced: '간격이 균형적으로 보입니다', statusSparse: '지점 간격이 넓어 보입니다', statusDense: '지점 간격이 좁아 보입니다', statusReviewHeavy: '이미지 확인 부담에 주의하세요', statusNeedsInput: '조사 계획을 완성하세요', statusNote: '이 도구는 조사 노력 계획입니다. 동물 개체 수나 종의 검출을 보장하지 않습니다.', assumptionTitle: '모형의 가정', assumptionText: '각 지점을 목표 간격에 따른 정사각형 셀로 취급합니다. 예상 이벤트는 카메라와 날짜에 따라 발생률이 일정하다고 가정합니다.', limitationTitle: '현장 한계', limitationText: '기하학적 균일성보다 대상 종과 질문에 따라 지점을 선택하세요. 식별자, 날짜, 방향, 높이, 서식지와 빈 확인을 기록하세요.',
|
|
29
|
+
},
|
|
30
|
+
seo: [
|
|
31
|
+
{ type: 'title', text: '무인카메라 조사 노력을 계획하는 방법', level: 2 },
|
|
32
|
+
{ type: 'paragraph', html: '야생동물 무인카메라 조사는 설치 전에 두 가지를 확인해야 합니다. 배치가 얼마나 큰 조사 노력인지, 예상 이미지 흐름을 저장하고 검토하고 기록할 수 있는지입니다. 이 계획표는 카메라 일수, 예상 이벤트, 상대적 지점 그림과 확인 지점으로 이를 정리합니다.' },
|
|
33
|
+
{ type: 'title', text: '카메라 일수로 조사 노력을 표현하기', level: 3 },
|
|
34
|
+
{ type: 'paragraph', html: '카메라 일수는 <code>카메라 지점 × 배치 일수</code>입니다. 카메라 12대를 28일 작동하면 336 카메라 일수입니다. 캠페인 비교에는 유용하지만 개체 수 추정이 아니며 고장, 서식지 차이와 동물 행동을 보정하지 않습니다.' },
|
|
35
|
+
{ type: 'list', items: ['<strong>카메라 지점:</strong> 캠페인에서 작동하는 장비 수입니다.', '<strong>배치 일수:</strong> 설치부터 회수까지의 예정 기간입니다.', '<strong>발생률:</strong> 연속 촬영 사진 수가 아니라 카메라 한 대 하루당 이벤트를 사용합니다.', '<strong>확인 지점:</strong> 저장 공간, 배터리, 방문과 이미지 검토를 계획합니다.'] },
|
|
36
|
+
{ type: 'title', text: '현장 그림을 계획 보조 도구로 읽기', level: 3 },
|
|
37
|
+
{ type: 'paragraph', html: '그림은 면적, 카메라 수와 목표 간격으로 상대적인 배치를 보여 줍니다. 명목상 면적은 지점 수에 목표 간격의 제곱을 곱한 값입니다. 센서의 검출 면적이 아니며 지형, 식생, 길, 방향, 높이와 행동에 따라 검출 확률이 달라집니다.' },
|
|
38
|
+
{ type: 'title', text: '배치 전에 기록 방식을 준비하기', level: 3 },
|
|
39
|
+
{ type: 'paragraph', html: '대상 종과 조사 질문을 먼저 정하고 카메라와 세션에 안정적인 식별자를 부여하세요. 날짜, 위치, 높이, 방향, 서식지, 설정과 작동 상태를 설치와 확인 때 기록하세요. 아무것도 찍히지 않은 확인도 조사 과정의 기록입니다.' },
|
|
40
|
+
{ type: 'tip', title: '조사 노력을 개체 수로 바꾸지 마세요', html: '무인카메라는 불완전한 검출의 영향을 받습니다. 운영과 이미지 검토 예산에는 이 계획을 사용하고 점유율, 개체 수, 밀도와 변화 분석에는 검증된 생태학적 설계를 사용하세요.' },
|
|
41
|
+
],
|
|
42
|
+
faq: faqData, howTo: howToData, bibliography, schemas: [faqSchema, howToSchema, appSchema],
|
|
43
|
+
};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import { bibliography } from '../bibliography';
|
|
3
|
+
import type { WildlifeCameraTrapEffortPlannerLocaleContent } from '../entry';
|
|
4
|
+
|
|
5
|
+
const slug = 'planner-inspanning-wildcamera';
|
|
6
|
+
const title = "Planner voor inspanning met wildcamera's";
|
|
7
|
+
const description = "Plan de inzet van wildcamera's, schat cameradagen en controlewerk en teken een opstelling zonder een populatieschatting te maken.";
|
|
8
|
+
const faqData = [
|
|
9
|
+
{ question: 'Wat zijn cameradagen?', answer: "Cameradagen zijn het aantal camera's vermenigvuldigd met het aantal actieve dagen. Ze beschrijven de bemonsteringsinspanning, niet het aantal dieren in een gebied." },
|
|
10
|
+
{ question: 'Berekent de planner de populatiegrootte?', answer: 'Nee. De planner schat operationele inspanning en een nominale planningsoppervlakte. Voor aantallen, dichtheid en bezetting zijn een gevalideerd ontwerp en een model voor onvolmaakte detectie nodig.' },
|
|
11
|
+
{ question: 'Wat doet de afstand tussen stations?', answer: "De afstand maakt een nominale vierkante cel per camera en vergelijkt die met een gelijkmatig raster uit oppervlakte en aantal camera's. Het is geen detectieradius." },
|
|
12
|
+
{ question: 'Hoe gebruik ik het controleschema?', answer: 'Gebruik de wekelijkse punten om bezoeken, batterijen, opslag en beeldcontrole te plannen. Vervang ze door de echte bezoeken uit je veldprotocol.' },
|
|
13
|
+
];
|
|
14
|
+
const howToData = [
|
|
15
|
+
{ name: 'Beschrijf het onderzoeksgebied', text: 'Voer het gebied in dat de inzet moet bemonsteren. De metrische of imperiale schakelaar houdt de fysieke waarde gelijk.' },
|
|
16
|
+
{ name: 'Plan het raster', text: "Voer camera's, inzetduur en doelafstand in. De schets toont een relatief planningsraster, geen coördinaten of gegarandeerde detectiezones." },
|
|
17
|
+
{ name: 'Schat de beeldbelasting', text: 'Voer verwachte gebeurtenissen per camera per dag in. De planner vermenigvuldigt dit met cameradagen en verdeelt het over controles.' },
|
|
18
|
+
{ name: 'Maak veldregistraties', text: "Geef camera's en sessies unieke codes, noteer de plaatsing en registreer elke controle, ook zonder wilddetectie." },
|
|
19
|
+
];
|
|
20
|
+
const faqSchema: WithContext<FAQPage> = { '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faqData.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) };
|
|
21
|
+
const howToSchema: WithContext<HowTo> = { '@context': 'https://schema.org', '@type': 'HowTo', name: title, description, step: howToData.map((step, index) => ({ '@type': 'HowToStep', position: index + 1, name: step.name, text: step.text })) };
|
|
22
|
+
const appSchema: WithContext<SoftwareApplication> = { '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'UtilityApplication', operatingSystem: 'All', offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' }, inLanguage: 'nl' };
|
|
23
|
+
|
|
24
|
+
export const content: WildlifeCameraTrapEffortPlannerLocaleContent = {
|
|
25
|
+
slug, title, description,
|
|
26
|
+
ui: {
|
|
27
|
+
areaPerCameraLabel: 'Oppervlakte per camera',
|
|
28
|
+
labelSurveyArea: 'Onderzoeksgebied', labelCameraCount: 'Camerastations', labelDeploymentDays: 'Inzetdagen', labelSpacing: 'Doelafstand tussen stations', labelTriggerRate: 'Verwachte gebeurtenissen per camera per dag', unitHectares: 'ha', unitAcres: 'ac', unitMeters: 'm', unitFeet: 'ft', unitCameras: "camera's", unitDays: 'dagen', unitEventsPerDay: 'gebeurtenissen per dag', helpSurveyArea: 'Het gebied dat de inzet moet bemonsteren.', helpCameraCount: "Actieve camera's in deze campagne.", helpDeploymentDays: 'Dagen tussen plaatsing en ophalen.', helpSpacing: 'Een planningscel, geen detectieradius.', helpTriggerRate: 'Gebruik een voorzichtige waarde uit vergelijkbaar veldwerk of een test.', unitSystemLabel: 'Meetsysteem', metricLabel: 'Metrisch', imperialLabel: 'Imperiaal', presetsTitle: 'Startpunten voor het veld', presetBackyard: 'Bosrand bij huis', presetWoodland: 'Gemengd bos', presetReserve: 'Groot reservaat', mapLabel: 'Relatieve schets van de inzet', mapCaption: 'Genummerde stations in een relatief planningsraster. De cellen zijn geen habitatkaart.', stationLabel: 'station', cameraDaysLabel: 'Cameradagen', expectedEventsLabel: 'Verwachte gebeurtenissen', spacingLabel: 'Afstand in gelijkmatig raster', reviewLoadLabel: 'Gebeurtenissen per controle', reviewScheduleTitle: 'Controleritme', reviewScheduleText: 'Wekelijkse punten maken de beeldbelasting zichtbaar vóór plaatsing. Vervang ze door de bezoeken uit je protocol.', reviewDayLabel: 'Dag', reviewEventsLabel: 'verwachte gebeurtenissen', statusBalanced: 'Afstand lijkt evenwichtig', statusSparse: 'Stations lijken ver uit elkaar', statusDense: 'Stations lijken dicht bij elkaar', statusReviewHeavy: 'Controlebelasting vraagt aandacht', statusNeedsInput: 'Vul een volledig inzetplan in', statusNote: 'Dit is een inspanningsplan. Het zegt niet hoeveel dieren in het gebied leven en garandeert geen soortdetectie.', assumptionTitle: 'Aannames van het model', assumptionText: "De nominale oppervlakte behandelt elk station als een vierkante cel op basis van de doelafstand. Verwachte gebeurtenissen veronderstellen een constant tempo bij alle camera's en dagen.", limitationTitle: 'Grenzen in het veld', limitationText: 'Kies locaties op basis van soort en vraag, niet alleen op geometrie. Noteer codes, datums, richting, hoogte, habitat en controles zonder detectie.',
|
|
29
|
+
},
|
|
30
|
+
seo: [
|
|
31
|
+
{ type: 'title', text: "Inspanning met wildcamera's plannen", level: 2 },
|
|
32
|
+
{ type: 'paragraph', html: "Een project met wildcamera's moet vóór plaatsing twee vragen beantwoorden. Hoeveel bemonsteringsinspanning vertegenwoordigt de inzet? Kunnen de verwachte beelden worden opgeslagen, gecontroleerd en gedocumenteerd? Deze planner vertaalt dat naar cameradagen, gebeurtenissen, een stationsschets en controlemomenten." },
|
|
33
|
+
{ type: 'title', text: 'Cameradagen gebruiken als maat voor inspanning', level: 3 },
|
|
34
|
+
{ type: 'paragraph', html: "Cameradagen zijn <code>camerastations × inzetdagen</code>. Twaalf camera's die 28 dagen actief zijn leveren 336 cameradagen. Dat helpt campagnes vergelijken, maar is geen populatieschatting en corrigeert niet voor defecten, habitat of gedrag." },
|
|
35
|
+
{ type: 'list', items: ['<strong>Camerastations:</strong> apparaten die tijdens de campagne actief zijn.', '<strong>Inzetdagen:</strong> geplande dagen tussen plaatsing en ophalen.', '<strong>Gebeurtenissentempo:</strong> gebeurtenissen per camera per dag, niet elke foto uit een burst.', '<strong>Controles:</strong> plan opslag, batterijen, bezoeken en beeldcontrole.'] },
|
|
36
|
+
{ type: 'title', text: 'De veldschets als planningshulp lezen', level: 3 },
|
|
37
|
+
{ type: 'paragraph', html: "De schets gebruikt gebied, aantal camera's en doelafstand voor een relatieve opstelling. De nominale oppervlakte is het aantal stations maal de afstand in het kwadraat. Dit is geen sensoroppervlakte: terrein, vegetatie, paden, hoogte, richting en gedrag veranderen de detectiekans." },
|
|
38
|
+
{ type: 'title', text: 'Vooraf betere veldregistraties maken', level: 3 },
|
|
39
|
+
{ type: 'paragraph', html: 'Bepaal doelsoort en onderzoeksvraag. Geef elke camera en sessie een vaste code. Noteer bij plaatsing en controle datum, locatie, hoogte, richting, habitat, instellingen en werking. Ook een controle zonder detectie is een echte waarneming van het protocol.' },
|
|
40
|
+
{ type: 'tip', title: 'Maak van inspanning geen aantal dieren', html: "Wildcamera's hebben onvolmaakte detectie. Gebruik deze planner voor veld- en beeldwerk en een gevalideerd ecologisch ontwerp voor bezetting, aantallen, dichtheid of populatieverandering." },
|
|
41
|
+
],
|
|
42
|
+
faq: faqData, howTo: howToData, bibliography, schemas: [faqSchema, howToSchema, appSchema],
|
|
43
|
+
};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import { bibliography } from '../bibliography';
|
|
3
|
+
import type { WildlifeCameraTrapEffortPlannerLocaleContent } from '../entry';
|
|
4
|
+
|
|
5
|
+
const slug = 'planer-wysilku-fotopulapek-przyrodniczych';
|
|
6
|
+
const title = 'Planer wysiłku fotopułapek przyrodniczych';
|
|
7
|
+
const description = 'Planuj wysiłek fotopułapek, szacuj dni pracy kamer i obciążenie przeglądaniem zdjęć bez udawania, że to estymacja populacji.';
|
|
8
|
+
const faqData = [
|
|
9
|
+
{ question: 'Czym są dni pracy kamery?', answer: 'To liczba kamer pomnożona przez liczbę dni ich działania. Opisują wysiłek próbkowania, a nie liczbę zwierząt na obszarze.' },
|
|
10
|
+
{ question: 'Czy planer oblicza wielkość populacji?', answer: 'Nie. Szacuje wysiłek operacyjny i nominalną powierzchnię planowania. Liczebność, zagęszczenie i zajętość wymagają zweryfikowanego projektu oraz modelu uwzględniającego niepełne wykrywanie.' },
|
|
11
|
+
{ question: 'Co robi parametr odstępu?', answer: 'Tworzy nominalną kwadratową komórkę dla każdej kamery i porównuje ją z równym odstępem wynikającym z powierzchni i liczby kamer. Nie jest promieniem wykrywania.' },
|
|
12
|
+
{ question: 'Jak używać harmonogramu kontroli?', answer: 'Wykorzystaj tygodniowe punkty do zaplanowania wizyt, baterii, pamięci i przeglądu zdjęć. Zastąp je rzeczywistymi wizytami z protokołu terenowego.' },
|
|
13
|
+
];
|
|
14
|
+
const howToData = [
|
|
15
|
+
{ name: 'Opisz obszar badania', text: 'Wpisz powierzchnię, którą ma objąć rozmieszczenie kamer. Przełącznik metryczny lub imperialny zachowuje wartość fizyczną.' },
|
|
16
|
+
{ name: 'Rozplanuj wysiłek', text: 'Wpisz liczbę kamer, czas działania i docelowy odstęp. Szkic pokazuje względną siatkę, a nie współrzędne ani gwarantowane strefy wykrywania.' },
|
|
17
|
+
{ name: 'Oszacuj obciążenie zdjęciami', text: 'Wpisz oczekiwaną liczbę zdarzeń na kamerę dziennie. Planer mnoży ją przez dni pracy kamer i rozdziela na kontrole.' },
|
|
18
|
+
{ name: 'Przygotuj zapisy terenowe', text: 'Nadaj kamerom i sesjom unikalne identyfikatory, zapisz ustawienie i odnotuj każdą kontrolę, także bez wykrycia zwierzęcia.' },
|
|
19
|
+
];
|
|
20
|
+
const faqSchema: WithContext<FAQPage> = { '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faqData.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) };
|
|
21
|
+
const howToSchema: WithContext<HowTo> = { '@context': 'https://schema.org', '@type': 'HowTo', name: title, description, step: howToData.map((step, index) => ({ '@type': 'HowToStep', position: index + 1, name: step.name, text: step.text })) };
|
|
22
|
+
const appSchema: WithContext<SoftwareApplication> = { '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'UtilityApplication', operatingSystem: 'All', offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' }, inLanguage: 'pl' };
|
|
23
|
+
|
|
24
|
+
export const content: WildlifeCameraTrapEffortPlannerLocaleContent = {
|
|
25
|
+
slug, title, description,
|
|
26
|
+
ui: {
|
|
27
|
+
areaPerCameraLabel: 'Powierzchnia na kamerę',
|
|
28
|
+
labelSurveyArea: 'Obszar badania', labelCameraCount: 'Stanowiska kamer', labelDeploymentDays: 'Dni działania', labelSpacing: 'Docelowy odstęp stanowisk', labelTriggerRate: 'Oczekiwane zdarzenia na kamerę dziennie', unitHectares: 'ha', unitAcres: 'ac', unitMeters: 'm', unitFeet: 'ft', unitCameras: 'kamer', unitDays: 'dni', unitEventsPerDay: 'zdarzeń dziennie', helpSurveyArea: 'Obszar, który ma objąć badanie.', helpCameraCount: 'Aktywne kamery w tej kampanii.', helpDeploymentDays: 'Dni od instalacji do odbioru.', helpSpacing: 'Pomoc planistyczna, nie promień wykrywania.', helpTriggerRate: 'Użyj ostrożnej wartości z podobnej kampanii lub testu.', unitSystemLabel: 'System miar', metricLabel: 'Metryczny', imperialLabel: 'Imperialny', presetsTitle: 'Punkty startowe w terenie', presetBackyard: 'Skraj lasu', presetWoodland: 'Las mieszany', presetReserve: 'Duży rezerwat', mapLabel: 'Względny szkic rozmieszczenia', mapCaption: 'Ponumerowane stanowiska na względnej siatce planistycznej. Komórki pomagają ocenić odstęp, ale nie są mapą siedliska.', stationLabel: 'stanowisko', cameraDaysLabel: 'Dni pracy kamer', expectedEventsLabel: 'Oczekiwane zdarzenia', spacingLabel: 'Odstęp równej siatki', reviewLoadLabel: 'Zdarzenia na kontrolę', reviewScheduleTitle: 'Rytm kontroli', reviewScheduleText: 'Tygodniowe punkty pokazują obciążenie zdjęciami przed instalacją. Zastąp je wizytami z własnego protokołu.', reviewDayLabel: 'Dzień', reviewEventsLabel: 'oczekiwanych zdarzeń', statusBalanced: 'Odstęp wygląda na zrównoważony', statusSparse: 'Stanowiska wyglądają na szeroko rozstawione', statusDense: 'Stanowiska wyglądają na blisko rozstawione', statusReviewHeavy: 'Obciążenie przeglądem wymaga uwagi', statusNeedsInput: 'Uzupełnij plan rozmieszczenia', statusNote: 'To plan wysiłku badawczego. Nie mówi, ile zwierząt żyje na obszarze i nie gwarantuje wykrycia gatunku.', assumptionTitle: 'Założenia modelu', assumptionText: 'Nominalna powierzchnia traktuje każde stanowisko jako kwadrat oparty na docelowym odstępie. Oczekiwane zdarzenia zakładają stałe tempo dla kamer i dni.', limitationTitle: 'Ograniczenia terenowe', limitationText: 'Wybieraj miejsca według gatunku i pytania, nie tylko geometrii. Zapisuj identyfikatory, daty, kierunek, wysokość, siedlisko i kontrole bez wykrycia.',
|
|
29
|
+
},
|
|
30
|
+
seo: [
|
|
31
|
+
{ type: 'title', text: 'Planowanie wysiłku fotopułapek', level: 2 },
|
|
32
|
+
{ type: 'paragraph', html: 'Projekt fotopułapek przed instalacją odpowiada na dwa pytania. Jaki wysiłek próbkowania przedstawia rozmieszczenie? Czy przewidywany strumień zdjęć można zapisać, sprawdzić i udokumentować? Ten planer zamienia je na dni pracy kamer, zdarzenia, szkic stanowisk i kontrole.' },
|
|
33
|
+
{ type: 'title', text: 'Dni pracy kamer jako miara wysiłku', level: 3 },
|
|
34
|
+
{ type: 'paragraph', html: 'Dni pracy kamer to <code>stanowiska kamer × dni działania</code>. Dwanaście kamer przez 28 dni daje 336 dni pracy. Ułatwia to porównywanie kampanii, ale nie jest estymacją populacji i nie koryguje awarii, siedliska ani zachowania.' },
|
|
35
|
+
{ type: 'list', items: ['<strong>Stanowiska:</strong> urządzenia aktywne w kampanii.', '<strong>Dni działania:</strong> planowany czas od instalacji do odbioru.', '<strong>Tempo zdarzeń:</strong> zdarzenia na kamerę dziennie, nie każde zdjęcie z serii.', '<strong>Kontrole:</strong> zaplanuj pamięć, baterie, wizyty i przegląd.'] },
|
|
36
|
+
{ type: 'title', text: 'Czytanie szkicu jako pomocy terenowej', level: 3 },
|
|
37
|
+
{ type: 'paragraph', html: 'Szkic korzysta z powierzchni, liczby kamer i odstępu, aby pokazać względne rozmieszczenie. Nominalna powierzchnia to liczba stanowisk razy odstęp do kwadratu. Nie jest to powierzchnia czujnika, bo teren, roślinność, wysokość, kierunek i zachowanie zmieniają prawdopodobieństwo wykrycia.' },
|
|
38
|
+
{ type: 'title', text: 'Lepsze zapisy przed instalacją', level: 3 },
|
|
39
|
+
{ type: 'paragraph', html: 'Zdefiniuj gatunek docelowy i pytanie badawcze. Nadaj kamerom i sesjom stałe identyfikatory. Zapisuj datę, miejsce, wysokość, kierunek, siedlisko, ustawienia i działanie przy instalacji oraz kontroli. Kontrola bez wykrycia też jest obserwacją procesu.' },
|
|
40
|
+
{ type: 'tip', title: 'Nie zamieniaj wysiłku na liczebność', html: 'Fotopułapki mają niepełne wykrywanie. Użyj planera do budżetu terenu i zdjęć, a zweryfikowanego projektu ekologicznego do zajętości, liczebności, zagęszczenia lub zmian populacji.' },
|
|
41
|
+
],
|
|
42
|
+
faq: faqData, howTo: howToData, bibliography, schemas: [faqSchema, howToSchema, appSchema],
|
|
43
|
+
};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import { bibliography } from '../bibliography';
|
|
3
|
+
import type { WildlifeCameraTrapEffortPlannerLocaleContent } from '../entry';
|
|
4
|
+
|
|
5
|
+
const slug = 'planejador-esforco-armadilhas-fotograficas';
|
|
6
|
+
const title = 'Planejador de esforço de armadilhas fotográficas';
|
|
7
|
+
const description = 'Planeje o esforço de armadilhas fotográficas, estime dias de câmera e a carga de revisão sem transformar o planejamento em uma estimativa populacional.';
|
|
8
|
+
const faqData = [
|
|
9
|
+
{ question: 'O que são dias de câmera?', answer: 'São o número de câmeras multiplicado pelo número de dias ativas. Descrevem o esforço de amostragem, não o número de animais em uma área.' },
|
|
10
|
+
{ question: 'O planejador calcula o tamanho da população?', answer: 'Não. Ele estima o esforço operacional e uma área nominal de planejamento. Abundância, densidade e ocupação exigem desenho validado e modelo que considere detecção imperfeita.' },
|
|
11
|
+
{ question: 'O que o espaçamento faz?', answer: 'Ele cria uma célula quadrada nominal para cada câmera e compara o alvo com o espaçamento de uma grade uniforme. Não é um raio de detecção.' },
|
|
12
|
+
{ question: 'Como usar o calendário de revisão?', answer: 'Use os pontos semanais para planejar visitas, baterias, armazenamento e revisão. Troque-os pelas visitas reais do seu protocolo de campo.' },
|
|
13
|
+
];
|
|
14
|
+
const howToData = [
|
|
15
|
+
{ name: 'Descrever a área de estudo', text: 'Informe a área que a instalação deve amostrar. O seletor métrico ou imperial preserva o valor físico ao alternar.' },
|
|
16
|
+
{ name: 'Planejar a disposição', text: 'Informe câmeras, duração e espaçamento-alvo. O desenho mostra uma grade relativa, não coordenadas nem zonas de detecção garantidas.' },
|
|
17
|
+
{ name: 'Estimar o volume de imagens', text: 'Informe eventos esperados por câmera por dia. O planejador multiplica pelos dias de câmera e distribui o total nas revisões.' },
|
|
18
|
+
{ name: 'Preparar registros de campo', text: 'Atribua identificadores únicos, registre a instalação e anote cada visita, mesmo quando nenhum animal for detectado.' },
|
|
19
|
+
];
|
|
20
|
+
const faqSchema: WithContext<FAQPage> = { '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faqData.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) };
|
|
21
|
+
const howToSchema: WithContext<HowTo> = { '@context': 'https://schema.org', '@type': 'HowTo', name: title, description, step: howToData.map((step, index) => ({ '@type': 'HowToStep', position: index + 1, name: step.name, text: step.text })) };
|
|
22
|
+
const appSchema: WithContext<SoftwareApplication> = { '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'UtilityApplication', operatingSystem: 'All', offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' }, inLanguage: 'pt' };
|
|
23
|
+
|
|
24
|
+
export const content: WildlifeCameraTrapEffortPlannerLocaleContent = {
|
|
25
|
+
slug, title, description,
|
|
26
|
+
ui: {
|
|
27
|
+
areaPerCameraLabel: 'Área por câmera',
|
|
28
|
+
labelSurveyArea: 'Área de estudo', labelCameraCount: 'Estações de câmera', labelDeploymentDays: 'Dias de instalação', labelSpacing: 'Espaçamento-alvo', labelTriggerRate: 'Eventos esperados por câmera por dia', unitHectares: 'ha', unitAcres: 'ac', unitMeters: 'm', unitFeet: 'ft', unitCameras: 'câmeras', unitDays: 'dias', unitEventsPerDay: 'eventos por dia', helpSurveyArea: 'Área que a instalação deve amostrar.', helpCameraCount: 'Câmeras ativas nesta campanha.', helpDeploymentDays: 'Dias entre a instalação e a retirada.', helpSpacing: 'Uma célula de planejamento, não um raio de detecção.', helpTriggerRate: 'Use uma taxa cautelosa de campanha semelhante ou teste.', unitSystemLabel: 'Sistema de medidas', metricLabel: 'Métrico', imperialLabel: 'Imperial', presetsTitle: 'Pontos de partida em campo', presetBackyard: 'Borda do quintal', presetWoodland: 'Mata mista', presetReserve: 'Grande reserva', mapLabel: 'Esquema relativo da instalação', mapCaption: 'Estações numeradas em uma grade relativa. As células ajudam no espaçamento, mas não são um mapa de cobertura do habitat.', stationLabel: 'estação', cameraDaysLabel: 'Dias de câmera', expectedEventsLabel: 'Eventos esperados', spacingLabel: 'Espaçamento da grade uniforme', reviewLoadLabel: 'Eventos por revisão', reviewScheduleTitle: 'Ritmo de revisão', reviewScheduleText: 'Os pontos semanais mostram o volume antes da instalação. Substitua-os pelas visitas do seu protocolo.', reviewDayLabel: 'Dia', reviewEventsLabel: 'eventos esperados', statusBalanced: 'Espaçamento aparentemente equilibrado', statusSparse: 'Estações aparentemente distantes', statusDense: 'Estações aparentemente próximas', statusReviewHeavy: 'A carga de revisão exige atenção', statusNeedsInput: 'Complete o plano de instalação', statusNote: 'Este é um plano de esforço. Ele não informa quantos animais vivem na área nem garante a detecção de uma espécie.', assumptionTitle: 'Hipóteses do modelo', assumptionText: 'A área nominal trata cada estação como uma célula quadrada baseada no espaçamento-alvo. Os eventos esperados supõem uma taxa constante entre câmeras e dias.', limitationTitle: 'Limites de campo', limitationText: 'Escolha locais pela espécie e pela pergunta, não só pela geometria. Registre identificadores, datas, orientação, altura, habitat e revisões sem detecção.',
|
|
29
|
+
},
|
|
30
|
+
seo: [
|
|
31
|
+
{ type: 'title', text: 'Planejar o esforço de armadilhas fotográficas', level: 2 },
|
|
32
|
+
{ type: 'paragraph', html: 'Um projeto de armadilhas fotográficas precisa responder a duas perguntas antes da instalação. Quanto esforço de amostragem a campanha representa? O fluxo esperado de imagens pode ser armazenado, revisado e documentado? Este planejador organiza isso em dias de câmera, eventos, esquema e revisões.' },
|
|
33
|
+
{ type: 'title', text: 'Usar dias de câmera para descrever o esforço', level: 3 },
|
|
34
|
+
{ type: 'paragraph', html: 'Dias de câmera são <code>estações de câmera × dias de instalação</code>. Doze câmeras ativas por 28 dias produzem 336 dias de câmera. Isso compara campanhas, mas não estima população e não corrige falhas, habitat ou comportamento.' },
|
|
35
|
+
{ type: 'list', items: ['<strong>Estações:</strong> dispositivos ativos durante a campanha.', '<strong>Dias:</strong> período previsto entre instalação e retirada.', '<strong>Taxa de eventos:</strong> eventos por câmera por dia, não cada foto de uma sequência.', '<strong>Revisões:</strong> planeje armazenamento, baterias, visitas e análise.'] },
|
|
36
|
+
{ type: 'title', text: 'Ler o esquema como apoio de campo', level: 3 },
|
|
37
|
+
{ type: 'paragraph', html: 'O esquema usa área, número de câmeras e espaçamento-alvo para mostrar uma disposição relativa. A área nominal é o número de estações vezes o espaçamento ao quadrado. Não é a área do sensor: terreno, vegetação, altura, orientação e comportamento mudam a probabilidade de detecção.' },
|
|
38
|
+
{ type: 'title', text: 'Preparar registros melhores antes da instalação', level: 3 },
|
|
39
|
+
{ type: 'paragraph', html: 'Defina a espécie-alvo e a pergunta. Dê um identificador estável a cada câmera e sessão. Registre data, local, altura, orientação, habitat, configurações e funcionamento. Uma revisão sem detecção também é uma observação do processo.' },
|
|
40
|
+
{ type: 'tip', title: 'Não transforme esforço em abundância', html: 'Armadilhas fotográficas têm detecção imperfeita. Use o planejador para o orçamento de campo e imagens e um desenho ecológico validado para ocupação, abundância, densidade ou mudança populacional.' },
|
|
41
|
+
],
|
|
42
|
+
faq: faqData, howTo: howToData, bibliography, schemas: [faqSchema, howToSchema, appSchema],
|
|
43
|
+
};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import { bibliography } from '../bibliography';
|
|
3
|
+
import type { WildlifeCameraTrapEffortPlannerLocaleContent } from '../entry';
|
|
4
|
+
|
|
5
|
+
const slug = 'planirovshchik-usilii-fotolovushek';
|
|
6
|
+
const title = 'Планировщик усилий фотоловушек';
|
|
7
|
+
const description = 'Планируйте работу фотоловушек, оценивайте дни работы камер и нагрузку проверки изображений без оценки численности животных.';
|
|
8
|
+
const faqData = [
|
|
9
|
+
{ question: 'Что такое камеродни?', answer: 'Камеродни равны числу камер, умноженному на число дней их работы. Это показатель усилий выборки, а не числа животных на территории.' },
|
|
10
|
+
{ question: 'Рассчитывает ли планировщик численность популяции?', answer: 'Нет. Он оценивает рабочие усилия и условную площадь планирования. Численность, плотность и заселённость требуют проверенного дизайна и модели неполного обнаружения.' },
|
|
11
|
+
{ question: 'Для чего нужен интервал между станциями?', answer: 'Он создаёт условную квадратную ячейку для каждой камеры и сравнивает цель с равномерным интервалом, выведенным из площади и числа камер. Это не радиус обнаружения.' },
|
|
12
|
+
{ question: 'Как использовать график проверок?', answer: 'Используйте еженедельные точки для планирования визитов, батарей, памяти и проверки изображений. Замените их реальными визитами из полевого протокола.' },
|
|
13
|
+
];
|
|
14
|
+
const howToData = [
|
|
15
|
+
{ name: 'Описать территорию исследования', text: 'Введите площадь, которую должна охватить установка. Переключение единиц сохраняет физическое значение.' },
|
|
16
|
+
{ name: 'Наметить размещение камер', text: 'Введите число камер, длительность и целевой интервал. Схема показывает относительную сетку, а не координаты и не гарантированную зону обнаружения.' },
|
|
17
|
+
{ name: 'Оценить поток изображений', text: 'Введите ожидаемые события на камеру в день. Планировщик умножит их на камеродни и распределит по проверкам.' },
|
|
18
|
+
{ name: 'Подготовить полевые записи', text: 'Назначьте уникальные идентификаторы камерам и сессиям, запишите установку и каждую проверку, даже если животные не обнаружены.' },
|
|
19
|
+
];
|
|
20
|
+
const faqSchema: WithContext<FAQPage> = { '@context': 'https://schema.org', '@type': 'FAQPage', mainEntity: faqData.map((item) => ({ '@type': 'Question', name: item.question, acceptedAnswer: { '@type': 'Answer', text: item.answer } })) };
|
|
21
|
+
const howToSchema: WithContext<HowTo> = { '@context': 'https://schema.org', '@type': 'HowTo', name: title, description, step: howToData.map((step, index) => ({ '@type': 'HowToStep', position: index + 1, name: step.name, text: step.text })) };
|
|
22
|
+
const appSchema: WithContext<SoftwareApplication> = { '@context': 'https://schema.org', '@type': 'SoftwareApplication', name: title, description, applicationCategory: 'UtilityApplication', operatingSystem: 'All', offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' }, inLanguage: 'ru' };
|
|
23
|
+
|
|
24
|
+
export const content: WildlifeCameraTrapEffortPlannerLocaleContent = {
|
|
25
|
+
slug, title, description,
|
|
26
|
+
ui: {
|
|
27
|
+
areaPerCameraLabel: 'Площадь на камеру',
|
|
28
|
+
labelSurveyArea: 'Площадь исследования', labelCameraCount: 'Камерные станции', labelDeploymentDays: 'Дни установки', labelSpacing: 'Целевой интервал станций', labelTriggerRate: 'Ожидаемые события на камеру в день', unitHectares: 'га', unitAcres: 'акр', unitMeters: 'м', unitFeet: 'фут', unitCameras: 'камер', unitDays: 'дней', unitEventsPerDay: 'событий в день', helpSurveyArea: 'Площадь, которую должна охватить установка.', helpCameraCount: 'Активные камеры этой кампании.', helpDeploymentDays: 'Дни от установки до снятия.', helpSpacing: 'Помощь для планирования, не радиус обнаружения.', helpTriggerRate: 'Используйте осторожную оценку из похожей кампании или теста.', unitSystemLabel: 'Система измерений', metricLabel: 'Метрическая', imperialLabel: 'Имперская', presetsTitle: 'Полевые отправные точки', presetBackyard: 'Опушка у дома', presetWoodland: 'Смешанный лес', presetReserve: 'Большой заповедник', mapLabel: 'Относительная схема установки', mapCaption: 'Пронумерованные станции на относительной планировочной сетке. Это не карта покрытия местообитаний.', stationLabel: 'станция', cameraDaysLabel: 'Камеродни', expectedEventsLabel: 'Ожидаемые события', spacingLabel: 'Интервал равномерной сетки', reviewLoadLabel: 'Событий за проверку', reviewScheduleTitle: 'Ритм проверок', reviewScheduleText: 'Еженедельные точки показывают нагрузку до установки камер. Замените их визитами вашего протокола.', reviewDayLabel: 'День', reviewEventsLabel: 'ожидаемых событий', statusBalanced: 'Интервал выглядит сбалансированным', statusSparse: 'Станции выглядят широко разнесёнными', statusDense: 'Станции выглядят тесно расположенными', statusReviewHeavy: 'Нагрузка проверки требует внимания', statusNeedsInput: 'Заполните план установки', statusNote: 'Это план усилий. Он не показывает число животных и не гарантирует обнаружение вида.', assumptionTitle: 'Допущения модели', assumptionText: 'Условная площадь представляет каждую станцию квадратной ячейкой на основе целевого интервала. Ожидаемые события предполагают постоянную частоту для всех камер и дней.', limitationTitle: 'Полевые ограничения', limitationText: 'Выбирайте места по виду и вопросу исследования, а не только по геометрии. Записывайте идентификаторы, даты, направление, высоту, местообитание и проверки без обнаружений.',
|
|
29
|
+
},
|
|
30
|
+
seo: [
|
|
31
|
+
{ type: 'title', text: 'Планирование усилий фотоловушек', level: 2 },
|
|
32
|
+
{ type: 'paragraph', html: 'До установки фотоловушек нужно ответить на два вопроса. Какой объём выборочных усилий представляет кампания? Можно ли сохранить, проверить и описать ожидаемый поток изображений? Этот планировщик сводит ответы к камеродням, событиям, схеме станций и контрольным точкам.' },
|
|
33
|
+
{ type: 'title', text: 'Камеродни как мера усилий', level: 3 },
|
|
34
|
+
{ type: 'paragraph', html: 'Камеродни равны <code>камерные станции × дни установки</code>. Двенадцать камер за 28 дней дают 336 камеродней. Это помогает сравнивать кампании, но не оценивает популяцию и не исправляет отказы, различия местообитаний или поведение животных.' },
|
|
35
|
+
{ type: 'list', items: ['<strong>Станции:</strong> устройства, работающие в кампании.', '<strong>Дни:</strong> планируемый срок от установки до снятия.', '<strong>Частота событий:</strong> события на камеру в день, а не каждый кадр серии.', '<strong>Проверки:</strong> планируйте память, батареи, визиты и просмотр изображений.'] },
|
|
36
|
+
{ type: 'title', text: 'Схема как полевая подсказка', level: 3 },
|
|
37
|
+
{ type: 'paragraph', html: 'Схема использует площадь, число камер и целевой интервал для относительного размещения. Условная площадь равна числу станций, умноженному на квадрат интервала. Это не площадь сенсора: рельеф, растительность, высота, направление и поведение меняют вероятность обнаружения.' },
|
|
38
|
+
{ type: 'title', text: 'Подготовить записи до установки', level: 3 },
|
|
39
|
+
{ type: 'paragraph', html: 'Определите целевой вид и исследовательский вопрос. Присвойте камерам и сессиям постоянные идентификаторы. Записывайте дату, место, высоту, направление, местообитание, настройки и исправность. Проверка без обнаружения тоже является наблюдением процесса.' },
|
|
40
|
+
{ type: 'tip', title: 'Не превращайте усилия в численность', html: 'Фотоловушки дают неполное обнаружение. Используйте планировщик для бюджета поля и изображений, а проверенный экологический дизайн для заселённости, численности, плотности или изменений популяции.' },
|
|
41
|
+
],
|
|
42
|
+
faq: faqData, howTo: howToData, bibliography, schemas: [faqSchema, howToSchema, appSchema],
|
|
43
|
+
};
|