<?xml version="1.0"?>
<oembed><version>1.0</version><provider_name>Acero Estudio</provider_name><provider_url>https://aceroestudio.com/en/</provider_url><title>The drone, our great ally - Acero Estudio</title><type>rich</type><width>600</width><height>338</height><html>&lt;blockquote class="wp-embedded-content" data-secret="fYqAQRt0aZ"&gt;&lt;a href="https://aceroestudio.com/en/the-drone-our-great-ally/"&gt;The drone, our great ally&lt;/a&gt;&lt;/blockquote&gt;&lt;iframe sandbox="allow-scripts" security="restricted" src="https://aceroestudio.com/en/the-drone-our-great-ally/embed/#?secret=fYqAQRt0aZ" width="600" height="338" title="&#x201C;The drone, our great ally&#x201D; &#x2014; Acero Estudio" data-secret="fYqAQRt0aZ" frameborder="0" marginwidth="0" marginheight="0" scrolling="no" class="wp-embedded-content"&gt;&lt;/iframe&gt;&lt;script type="text/javascript"&gt;
/* &lt;![CDATA[ */
/**
 * WordPress inline HTML embed
 *
 * @since 4.4.0
 * @output wp-includes/js/wp-embed.js
 *
 * Single line comments should not be used since they will break
 * the script when inlined in get_post_embed_html(), specifically
 * when the comments are not stripped out due to SCRIPT_DEBUG
 * being turned on.
 */
(function ( window, document ) {
	'use strict';

	/* Abort for ancient browsers. */
	if ( ! document.querySelector || ! window.addEventListener || typeof URL === 'undefined' ) {
		return;
	}

	/** @namespace wp */
	window.wp = window.wp || {};

	/* Abort if script was already executed. */
	if ( !! window.wp.receiveEmbedMessage ) {
		return;
	}

	/**
	 * Receive embed message.
	 *
	 * @param {MessageEvent} e
	 */
	window.wp.receiveEmbedMessage = function( e ) {
		var data = e.data;

		/* Verify shape of message. */
		if (
			! ( data || data.secret || data.message || data.value ) ||
			/[^a-zA-Z0-9]/.test( data.secret )
		) {
			return;
		}

		var iframes = document.querySelectorAll( 'iframe[data-secret="' + data.secret + '"]' ),
			blockquotes = document.querySelectorAll( 'blockquote[data-secret="' + data.secret + '"]' ),
			allowedProtocols = new RegExp( '^https?:$', 'i' ),
			i, source, height, sourceURL, targetURL;

		for ( i = 0; i &lt; blockquotes.length; i++ ) {
			blockquotes[ i ].style.display = 'none';
		}

		for ( i = 0; i &lt; iframes.length; i++ ) {
			source = iframes[ i ];

			if ( e.source !== source.contentWindow ) {
				continue;
			}

			source.removeAttribute( 'style' );

			if ( 'height' === data.message ) {
				/* Resize the iframe on request. */
				height = parseInt( data.value, 10 );
				if ( height &gt; 1000 ) {
					height = 1000;
				} else if ( ~~height &lt; 200 ) {
					height = 200;
				}

				source.height = height;
			} else if ( 'link' === data.message ) {
				/* Link to a specific URL on request. */
				sourceURL = new URL( source.getAttribute( 'src' ) );
				targetURL = new URL( data.value );

				if (
					allowedProtocols.test( targetURL.protocol ) &amp;&amp;
					targetURL.host === sourceURL.host &amp;&amp;
					document.activeElement === source
				) {
					window.top.location.href = data.value;
				}
			}
		}
	};

	function onLoad() {
		var iframes = document.querySelectorAll( 'iframe.wp-embedded-content' ),
			i, source, secret;

		for ( i = 0; i &lt; iframes.length; i++ ) {
			/** @var {IframeElement} */
			source = iframes[ i ];

			secret = source.getAttribute( 'data-secret' );
			if ( ! secret ) {
				/* Add secret to iframe */
				secret = Math.random().toString( 36 ).substring( 2, 12 );
				source.src += '#?secret=' + secret;
				source.setAttribute( 'data-secret', secret );
			}

			/*
			 * Let post embed window know that the parent is ready for receiving the height message, in case the iframe
			 * loaded before wp-embed.js was loaded. When the ready message is received by the post embed window, the
			 * window will then (re-)send the height message right away.
			 */
			source.contentWindow.postMessage( {
				message: 'ready',
				secret: secret
			}, '*' );
		}
	}

	window.addEventListener( 'message', window.wp.receiveEmbedMessage, false );
	document.addEventListener( 'DOMContentLoaded', onLoad, false );
})( window, document );
//# sourceURL=https://aceroestudio.com/wp-includes/js/wp-embed.js
/* ]]&gt; */
&lt;/script&gt;
</html><thumbnail_url>https://aceroestudio.com/wp-content/uploads/2021/07/vuelo-de-dron.png</thumbnail_url><thumbnail_width>750</thumbnail_width><thumbnail_height>390</thumbnail_height><description>The photogrammetric flight with drone is, nowadays, one of the most used techniques in inspections and monitoring of works and in Acero Estudio we offer this type of service. With this technique we convert two-dimensional data into three-dimensional information, since it allows us to calculate the dimensions and positions of objects in space from measurements taken on aerial photographs. The drones are equipped with GPS technology and follow programmed flight paths, performing very precise and stable flights, ideal to achieve optimal results and great advantages. The use of drones has increased the possibilities of image exploitation, allowing the automatic generation of height models, ortho-images and stereo-images as well as the creation and visualization of three-dimensional models. In addition, with the use of this technology, a faster and more personalized service is achieved for each project. Drone photogrammetry has made it possible to speed up processes, reduce costs, diminish operational risks and provide high quality images. For the restitution of 3D images with drones to be accurate we need, in addition to a great knowledge of the surface, a correct flight planning, since this is where we find the main difficulty of the mission. The drone flight must be stable and constant in order to obtain elements of the front, rear and side images, that is, the captured photographs must have a high amount of overlap between images, approximately 80% in each photograph. As we can see, drones have become our great ally in this sector. It is of vital importance that the flight is performed by professional experts such as the ones in Acero Estudio, to get the best results! Contact us to solve any doubt or to collaborate with us and take a look at https://aceroestudio.com/drones/ to learn more.</description></oembed>
